我已经在C#中使用Selenium完成了一些项目。但是现在我们正在寻找移动测试的最佳策略是什么。 你能给我一些建议吗?我已经改了一些教程,但我真的不知道从哪里开始。
在Mac上安装Appium服务器并将所有iOS测试都指向该服务器? Android测试怎么样?他们还指向Mac上的Appium服务器吗?
所以您可以听到,在这件事上,我需要一些建议或非常好的教程。
谢谢。
答案 0 :(得分:1)
您需要的是Selenium Grid:https://www.seleniumhq.org/docs/07_selenium_grid.jsp
请仔细阅读此内容,因为我保证这是您所需要的。我在Unity游戏引擎中编写了一个自动化框架,以将游戏可执行文件加载到iOS设备和Android设备上。
我将可测试设备物理连接到用作服务器的Macbook和Jenkins构建代理。
您将要下载Selenium Grid jar,这是一个集线器,可以代理所有都在同一台计算机上运行的多个Appium进程的命令(每个进程与单独的设备通信)。该服务器将帮助Appium分离功能,以便多个Appium进程可以一次运行,并通过WiFi或物理电缆连接与连接的设备进行通信。
准备就绪后,建议您阅读有关使用Appium / Selenium Grid集成解决方案设置Jenkins的教程。本教程特定于在Unity游戏引擎中设置我开发的名为Trilleon的框架,但是当您为带有Selenium Grid的Appium中的常规本机应用程序设置测试时,本教程的绝大多数内容将完全相同。
http://trilleonautomation.wiki/setup-prereqs-mac
http://trilleonautomation.wiki/setup-jenkins
这是我开发的bin / bash脚本的各种示例(也是针对此框架的,但其中许多将满足您的需求)。
https://github.com/disruptorbeam/trilleon/blob/master/server/sh/run-tests.sh
以下内容将在Selenium Grid中创建一个节点。一次运行的每个实例都需要以这种方式进行注册。使用它来确定如何填写它,并将节点json提供给Selenium Grid
https://github.com/disruptorbeam/trilleon/blob/master/server/sh/CreateUniqueNodeJson.sh
这是从詹金斯(Jenkins)启动的Python脚本,用于运行appium。这将由多个作业同时在其各自的工作空间中运行来运行。 https://github.com/disruptorbeam/trilleon/tree/master/server/py
上面的python脚本将包含一堆与您完全无关的东西,但也包含了在android或ios设备上启动appium所需的一切。