my test fails because of : Message: The sourceName specified on a TestCaseSourceAttribute must refer to a static field, property or method.
This is my Code:
private const double MAX_DELTA = 0.01;
private Qv_LtM Qv_LtM_fr_Quer;
[SetUp]
public void init()
{
Qv_LtM_fr_Quer = Din1946.Calc_Qv_LtM_fr_Quer(Qv_ges_Quer, false, false, 205.7d, 2.59d, 1.5d, 1.0d, (2d / 3d));
}
public IEnumerable<TestCaseData> TestCases_A()
{
yield return new TestCaseData(72.5, Qv_ges_Quer.FL.Value, MAX_DELTA);
yield return new TestCaseData(169.17, Qv_ges_Quer.RL.Value, MAX_DELTA);
yield return new TestCaseData(241.67, Qv_ges_Quer.NL.Value, MAX_DELTA);
yield return new TestCaseData(314.17, Qv_ges_Quer.IL.Value, MAX_DELTA);
}
[TestCaseSource("TestCases_A")]
public void MethodA(double expected, double value, double latitude)
{ Assert.AreEqual(expected, value, latitude);}
I used only static testcase-methods, but now I need data like: Qv_ges_Quer.IL.Value, Qv_ges_Quer.FL.Value.... so I deleted static
How can I use a non static testcase?
This is my old code which I want to reorginze, mybe you know another/better way then the way above:
public void MethodA(){
Qv_ges qv_ges_NE = Din1946.Calc_Qv_ges_NE(205.7d);
double Sum_Qv_ges_R_FL = 15d + 15d + 15d + 15d + 15d + 10d + 10d + 10d + 10d + 10d + 10d + 10d;
Qv_ges Qv_ges_Quer = Din1946.Calc_Qv_ges_Quer(qv_ges_NE, Sum_Qv_ges_R_FL);
Assert.AreEqual(72.5, Qv_ges_Quer.FL.Value, MAX_DELTA);
Assert.AreEqual(169.17, Qv_ges_Quer.RL.Value, MAX_DELTA);
Assert.AreEqual(241.67, Qv_ges_Quer.NL.Value, MAX_DELTA);
Assert.AreEqual(314.17, Qv_ges_Quer.IL.Value, MAX_DELTA);
}
Aucun commentaire:
Enregistrer un commentaire