在多个硒项目中共享设置和拆除方法

时间:2017-08-15 16:54:13

标签: visual-studio selenium

因此,我在单独的VS解决方案中有多个selenium测试项目,它们都具有相同的Setup()方法,这些方法在场景运行之前执行,并且所有方法都具有相同的TearDown()方法。目前,如果这些方法需要进行更改,则必须单独更新,因此我正在寻求集中这些方法以用于所有测试项目/解决方案。

我相对较新,所以提前道歉,但有没有人有这方面的经验,我可以采取的方法的建议?它甚至可能吗?我的测试目前并不是并行进行的,所以这是我需要查看的内容吗?

3 个答案:

答案 0 :(得分:0)

如果你改变代码怎么办? [OneTimeSetUp]和[OneTimeTearDown]?

在我看来你应该创建一个用于设置包括设置和拆除的类,然后在yor test add setup中设置像这个公共类HREmployeeList:Setup

希望有用或不只是查看以下链接 http://toolsqa.com/selenium-webdriver/c-sharp/how-to-write-selenium-test-using-nunit-framework/

答案 1 :(得分:0)

您可以做的一件事是创建一个包含setup和teardown函数的新项目,然后在所有其他项目中包含该已编译的dll。如果您需要对setup / teardown进行更改,则进行更改并编译新的dll,并将代码更改传递给所有其他项目。

答案 2 :(得分:-1)

长话短说 - 你需要创建一个Meta框架。

  

概念元框架提供了一种解决问题的方法,将多个部分自动化作为更大自动化策略的一部分。测试人员定义独立的实用程序类,它们通常可以与任何自动化工具一起使用,也可以在不同的自动化项目之间重用。该框架提供了一个抽象层,允许执行单独的自动化部分,并以标准化方式报告其结果。

我有一个post on the topic,所以随时可以从那里拿出你需要的东西。

由于您已经标记了VisualStudio,我将首先分享我的团队用于跨测试项目共享通用功能的方法。你需要的是一个私人Nuget服务器。每个团队根据其提供的服务编译和支持Nuget包。例如Selenium代码,API调用等。

接下来,可能更接近您的案例解决方案是利用git submodules并在您的项目之间共享测试harness engine

这两种方法都会受益于Fixture Setup Patterns共享夹具构造。