function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
ne-rm-teamne-rm-team 

Sandbox Testcoverage 100% - Deployment to production environment failed with Testcoverage 48% ?!?!

Hi,
 
hi have a little Apex program that i wrote and a test class too. Everything works fine in the Sandbox and the testcoverage is 100%. I can run the Test from the Sandbox or from the Ecplise IDE - everything is ok.
 
So when I try to deploy the code to my production environment and run a validation for deployment in the IDE wizard, I get a validation failure because I have only 48% testcoverage with the same code I tested before with a 100% coverage?!?! How can this be??
 
This is my Apex code. I have to triggers and one class for running the code:
Trigger one:

trigger CopyPawUpKV on Komponenten_Version__c (before update)

{

SOmyCopyPawClass.updateValues(trigger.new);

}

 

Trigger two:

trigger CopyPawJoinPVKV on Join_Produkt__c (before insert)

{

SOmyCopyPawClass.createValues(trigger.new);

}

 

Class:

public class SOmyCopyPawClass

{

public static void createValues(Join_Produkt__c[] jpkv)

{

Set<Id> newIds = new Set<Id>();

for(Integer i = 0; i < jpkv.size(); i++)

{

newIds.add(jpkv[i].Komponenten_Version__c);

}

List<Komponenten_Version__c> qr = [select id,Planaufwand_Tage__c,Status__c from Komponenten_Version__c where id in :newIds];

for(Integer i=0; i<jpkv.size(); i++)

{

for(Integer j=0; j<qr.size(); j++)

{

if(jpkv[i].Komponenten_Version__c == qr[j].id)

{

jpkv[i].Planaufwand_Tage__c = qr[j].Planaufwand_Tage__c;

jpkv[i].nextE_Status__c = qr[j].Status__c;

 

}

}

}

}

 

public static void updateValues(Komponenten_Version__c[] kv)

{

Set<Id> upIds = new Set<Id>();

for(Integer i = 0; i < kv.size(); i++)

{

upIds.add(kv[i].id); //Id-Set der Komponentenversionen

}

List<Join_Produkt__c> qr = [select id,nextE_Status__c,Planaufwand_Tage__c,Komponenten_Version__c from Join_Produkt__c where Komponenten_Version__c in :upIds];

for(Integer i=0; i<qr.size(); i++)

{

for(Integer j=0; j<kv.size(); j++)

{

if(qr[i].Komponenten_Version__c == kv[j].id)

{

qr[i].Planaufwand_Tage__c = kv[j].Planaufwand_Tage__c;

qr[i].nextE_Status__c = kv[j].Status__c;

}

}

}

update qr;

}

}

 

And this is my Testclass:

@isTest

private class SOmyCopyPawClass_isTest

{

static testMethod void myUnitTest()

{

Produkt_Version__c pv = new Produkt_Version__c(Name='nextPCM PV1');

insert pv;

 

List<Komponenten_Version__c> kvs = new List<Komponenten_Version__c>();

Komponenten_Version__c kv1 = new Komponenten_Version__c(Name='KV1',Status__c='1 - in Planung');

kvs.add(kv1);

Komponenten_Version__c kv2 = new Komponenten_Version__c(Name='KV2',Status__c='1 - in Planung');

kvs.add(kv2);

insert kvs;

 

List<Join_Produkt__c> joins = new List<Join_Produkt__c>();

Join_Produkt__c join1 = new Join_Produkt__c(Komponenten_Version__c=kv1.id,Produkt_Version__c=pv.id);

joins.add(join1);

Join_Produkt__c join2 = new Join_Produkt__c(Komponenten_Version__c=kv2.id,Produkt_Version__c=pv.id);

joins.add(join2);

insert joins;

 

List<technische_Funktionalitaet__c> tfs = new List<technische_Funktionalitaet__c>();

technische_Funktionalitaet__c tf1 = new technische_Funktionalitaet__c(Name='tf1',Komponenten_Version__c=kv1.id,Doku_Tage__c=2);

tfs.add(tf1);

technische_Funktionalitaet__c tf2 = new technische_Funktionalitaet__c(Name='tf2',Komponenten_Version__c=kv1.id,Doku_Tage__c=3);

tfs.add(tf2);

technische_Funktionalitaet__c tf3 = new technische_Funktionalitaet__c(Name='tf3',Komponenten_Version__c=kv2.id,Doku_Tage__c=4);

tfs.add(tf3);

technische_Funktionalitaet__c tf4 = new technische_Funktionalitaet__c(Name='tf4',Komponenten_Version__c=kv2.id,Doku_Tage__c=6);

tfs.add(tf4);

insert tfs;

 

Join_Produkt__c joins_erg1 = [select id,Planaufwand_Tage__c,nextE_Status__c from Join_Produkt__c where id = :join1.id];

Join_Produkt__c joins_erg2 = [select id,Planaufwand_Tage__c,nextE_Status__c from Join_Produkt__c where id = :join2.id];

 

System.assertEquals(5,joins_erg1.Planaufwand_Tage__c);

System.assertEquals('1 - in Planung',joins_erg1.nextE_Status__c);

System.assertEquals(10,joins_erg2.Planaufwand_Tage__c);

System.assertEquals('1 - in Planung',joins_erg2.nextE_Status__c);

}

}

 

So, can anyone help me out?

Thanks for any help in advance.

 

Best regards

Sascha



Message Edited by ne-rm-team on 11-28-2008 01:59 AM

Message Edited by ne-rm-team on 11-28-2008 02:05 AM

Message Edited by ne-rm-team on 11-28-2008 02:09 AM