Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使测试更少地依赖于以前的测试?_C#_Ranorex - Fatal编程技术网

C# 如何使测试更少地依赖于以前的测试?

C# 如何使测试更少地依赖于以前的测试?,c#,ranorex,C#,Ranorex,我不是测试人员,但必须为我们的WPF桌面软件编写测试。我们正在使用Ranorex 我计划在单个测试套件中包含数百个测试用例。可能使用智能文件夹进行分组。如果我的计划错了,请批评一下 如何正确组织测试用例,以便在不影响现有测试用例的情况下编辑/删除它们、添加新的测试用例等 测试一个接一个地运行。如果删除了某些测试或插入了新测试,则必须调整后续测试。对我来说,这是一个问题,尤其是在团队环境中,不同的人编写测试,我正在考虑如何使测试不那么依赖于其他测试 我可以想到以下可能性: 1.恢复完整的环境 默

我不是测试人员,但必须为我们的WPF桌面软件编写测试。我们正在使用Ranorex

我计划在单个测试套件中包含数百个测试用例。可能使用智能文件夹进行分组。如果我的计划错了,请批评一下

如何正确组织测试用例,以便在不影响现有测试用例的情况下编辑/删除它们、添加新的测试用例等

测试一个接一个地运行。如果删除了某些测试或插入了新测试,则必须调整后续测试。对我来说,这是一个问题,尤其是在团队环境中,不同的人编写测试,我正在考虑如何使测试不那么依赖于其他测试


我可以想到以下可能性:

1.恢复完整的环境 默认状态:没有软件正在运行。每个测试用例应在测试完成后启动软件并退出软件

Software test - Test suite
- Main window test 1 - Test case
    - Setup
        ... start software ...
    Test body - Recording
    - Teardown
        ... exit software ...
+ Main window test 2 - Test case // same structure as test 1
+ Main window test 3 - Test case // same structure as test 1
这是一种非常简单的抽象方法,但在时间方面也非常低效。虽然通常我们不关心夜间测试的持续时间,但我关心的是开发时间:测试测试用例(调试)时,我会被迫等待(软件启动需要很长时间)

2.嵌套结构 测试用例可以由嵌套的智能文件夹组织,其中内部文件夹将具有更多的本地功能。例如,外部将启动软件,内部将切换到窗口,更多内部-切换选项卡等。然后,测试按控制位置分组

调试时,我可以禁用所有测试,然后只启用一个,然后单击“运行到此处”。这将通过所有父文件夹设置。现在我可以多次运行我的单个测试,而不必重新启动软件、等待等等

这种方法的问题是切换回什么???我必须为包含测试用例的每个嵌套文件夹定义“默认”状态,其中的每个测试应该在结束时完全恢复此状态。这似乎相当乏味,例如,填写表格仅检查启用了“确定”按钮的测试必须在之后清除所有内容

3.还有更多的选择吗?
这是我的问题。还有别的选择吗?我是不是在不知道一件简单的事情(哪件)的情况下过度思考了这一切?

这个问题可能更适合@MarkusDeibel,谢谢,它确实可能是。
Software test - Test suite
- Setup
    ... start software ...
- Main window - Smart folder
    - Setup
        ... switch to main window ...
    + Main window test 1 - Test case
    + Main window test 2 - Test case
    + Main window test 3 - Test case
    - Teardown
        ... switch back to ???? ...
- Teardown
    ... exit software ...