使用自动化 Web 应用程序测试 硒 自动测试开发人员之间的通用解决方案,以及 C# 最流行的编程语言之一,因此这些工具的组合不会引起任何问题。 为了使用这些技术进行开发,通常使用 Microsoft 的 Windows 流行专有软件,但我很想知道可以使用哪些免费类似物来完成此任务,而无需脱离 Selenium + C# 堆栈。
由于我没有找到任何关于此主题的俄语文章,因此我将分享我在 Linux 上设置 C# 开发和调试自动测试环境的经验。
使用的操作系统是 Kubuntu 18.04 64 位,带有 Linux 内核 4.15.0-99-generic,从下载的 ISO 映像安装
Mono JIT 编译器版本 6.6.0.166 充当 C# 的 CLR。 它的安装包括按顺序复制命令并执行到终端(在 Kubuntu 中是 Konsole)
并用作 IDE
Selenium 支持很多浏览器,但我懒得去操心所有的事情,只限于 铬'嗯,已经安装了
接下来,我们在 MonoDevelop 中创建一个解决方案:
- 启动 MonoDevelop
- 转到“文件”菜单
- 选择“创建解决方案”
- 单击“.NET”
- 选择“NUnit 库项目”并单击“下一步”
- 填写解决方案的名称和路径,点击“创建”
要控制浏览器,您还需要几个 NuGet 包:
- 转到“项目”菜单并选择“添加 NuGet 包”
- 查找并安装 Selenium.WebDriver 包
- 查找并安装 Selenium.WebDriver.ChromeDriver 包
就这样,剩下的就是编写一些代码来检查所有内容是否都按应有的方式配置。 创建解决方案时,会自动创建一个测试方法 Test.cs 文件,我在其中放置以下几行代码:
using NUnit.Framework;
using System;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;
namespace SeleniumTests
{
[TestFixture()]
public class Test
{
[Test()]
public void TestCase()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://habr.com/");
Assert.IsTrue(driver.Url.Contains("habr.com"), "Что-то не так =(");
driver.Quit();
}
}
}
测试从“单元测试”选项卡启动;如果未显示,请转到“查看”菜单并选择“测试”。
成功的自动化 =)
来源: habr.com