我们使用与C#集成的Selenium来进行我们的网络应用测试。我注意到的问题是,与其他Selenium + [code]组合相比,Selenium + C#令人难以置信地慢。
这只是一个简单的“登录,然后退出我们的网络应用程序”测试。
- 0:04 - Firefox中的Selenium IDE
- 0:05 - Selenium WD + Python,仅测试
- 0:09 - Selenium WD + Python,总计
- 0:11 - 通过Visual Studio获取Selenium WD + C#> debug,仅测试
- 0:20 - 通过Visual Studio的Selenium WD + C#> debug,total run
- 0:25 - Selenium WD + C#+ NUnit,仅测试
- 0:35 - Selenium WD + C#+ NUnit,总计
- 0:37 - Selenium WD + C#+ NUnit通过Jenkins,仅测试
- 0:56 - Selenium WD + C#+ NUnit通过Jenkins,总计
我可以考虑什么来减少这种可怜的缓慢?
3 个答案:
答案 0 :(得分:0)
您可能正在x64系统上运行测试。如果是这样,您应该使用x64 WebDriver。
答案 1 :(得分:0)
如果您运行的是.NET Core,则说明您遇到的是已知的bug。
在IISExpress和测试uri中同时切换到127.0.0.1
可以缓解问题。
您可以看看Selenium running very slowly (C#)。
答案 2 :(得分:-1)
这里有很多因素可以发挥作用,但根据我的经验,C#+ Selenium是我用过的最快的因素之一。
以下是您可以尝试的几件事:
- 如果您要对测试进行并行化,请降低一次运行的测试数量。它真的瓶颈性能,有时可能会破坏测试的完整性。
- 代码清理。我得到了一个测试暴力登录的工具,它几乎不能达到阈值(在X秒内20次)。我重新安排,重新使用,重新集中了一些功能,我们在30秒内达到了门槛。这也帮助我运行了更多的并行化测试
- 如果您通过RDC运行它,请检查网络性能,证券等。