如何在测试期间设置变量的值?

时间:2017-06-11 18:54:57

标签: unit-testing testing automation

假设我有一个我想要测试的Java(或任何其他语言)代码。假设我想测试当变量'myVar'在某一行保持10的整数值时代码的行为方式。

一个选项是将值10分配给此行的变量'myVar'。这样可以正常工作,但会使代码变脏。如果我想测试另一个场景,我将不得不修复此行。如果我有大量的场景,会发生什么?

我想知道是否有一个选项来保存外部文件/配置,只要我想在不修改代码的情况下测试这个特定场景,它就会被加载?

1 个答案:

答案 0 :(得分:0)

其中一种方法是使用Json文件。只需将您的值放入Json文件" test.json"位于c:\ testfolder的位置包含以下内容:

{
    "Scenario":"10"
}

现在,您可以使用C#中的以下代码访问该值:

StreamReader file = File.OpenText("c:\testfolder\test.json");
JsonTextReader reader = new JsonTextReader(file);
JObject jObject = (JObject)JToken.ReadFrom(reader);
int a = jObject ["Scenario"];

您可以使用此变量a,其中包含来自Json文件的值10。