F2etest环境搭建(二)

939 阅读5分钟

F2etest环境搭建(二)

前言:F2etest环境搭建(一)虽然完成了F2etest-web部署、浏览器云部署、多浏览器部署F2etest的环境搭建,但是有些实际过程中遇到的小问题并未记录,故这篇文章描述的是如何解决这些问题及WebDriver云的安装部署。

120天授权激活破解如何进行?

当你按照官方文档进行浏览器云部署 ,却没有进行授权破解,不会影响现阶段的部署,但过了120天后,会导致登录失效的问题。

激活破解步骤分为以下几步:

  1. 点击开始菜单,输入cmd回车后,在命令行窗口中输入 gpedit ;
  2. 计算机配置 -> 管理模板 -> Windows组件 -> 远程桌面服务 -> 远程桌面会话主机 -> 授权;
  3. 双击打开“使用指定的远程桌面许可证服务器”,先选择已启用 ,再填写本机IP或主机名 ,最后点击确定;
  4. 双击打开“设置远程桌面授权模式”,先选择已启用,再选择按用户,最后点击确定即完成了授权激活破解。

注:

  • 进行第一步的时候,不要直接在开始菜单中输入gpedit,否则会导致你搜索为空;
  • 进行第三步的时候,若不知道如何填写许可证服务器,那么在命令行窗口键入 hostname ,显示即为填写值。

出现用户名或密码不正确的情况,处理方式?

当你按照官方文档进行多浏览器部署 ,却没有进行同步用户信息,会导致出现用户名或密码不正确的情况。

如下图所示:

处理方式

  • 同步用户信息,调用 f2etest-web 的同步所有用户接口,本机浏览器访问 http://{f2etestDomain}/syncAllRemoteUsers ;

  • f2etestDomain 为 f2etest-web 站点的访问地址;

  • 正确返回如下图。

出现浏览器云的浏览器打开网页,显示未连接到互联网的情况,处理方式?

当你配置了hosts后,却发现点击hosts图标进入显示错误,或浏览器云的浏览器起初能打开网页,后来却显示未连接到互联网,对应服务器上的浏览器访问网页也无误,问题截图如下所示。

点击hosts图标进入显示错误

未连接到互联网

处理方式

  • 重新check,hosts的配置方法后,再次点击hosts图标(注意名称为hostsShare,不是hostShare);
  • 进入 hostsShare ,输入127.0.0.1 localhost 如下图;
  • 再次打开浏览器云的浏览器发现,可以正常访问网页。

如何进行WebDriver云的安装部署?

若你已进行了前面的F2etest-web部署、浏览器云部署、多浏览器部署,那么你可以直接进行以下操作。

安装NodeJs

安装请访问官网:nodejs.org/ ,如果已安装好,请略过。为了稳定,建议安装LTS版本,注node版本当前建议选择安装8.15版本,安装10以上的版本大概率会出现版本不匹配导致安装卡死的情况。

安装Java

安装请访问官网:java.com/zh_CN/downl… , 用于运行WebDriver Server(Selenium2) 。

image.png

下载f2etest-webdriver

下载并拷贝 github.com/alibaba/f2e…,放到C盘更目录下C:\f2etest-webdriver

初始化子节点账号数据

双击批量设置节点用户.vbs文件,输入需要初始化的节点数量,例如:8

image.png

在本地用户和组中可看到已经初始化好的8个节点用户

image.png

删除多页的节点rdp文件,只保留8个,与节点用户保持一致

image.png

初始化环境变量

C:\f2etest-webdriver\webdriver\文件夹添加到PATH环境变量中

image.png

关闭IE增强配置

image.png

安装Chrome

Chrome版本需与Chrome Webdriver的版本对上,如Chrome 76 要对应Chrome WebDriver 76

附:webdriver下载链接 sites.google.com/a/chromium.…

禁用防火墙

防止WebDriver命令无法转发至本机

image.png

初始化webdriver节点

执行步骤

由于不同系统生成的 Hash 不同,因此,这个值需要在每台执行机上进行动态生成并替换

  • 执行RDP.exe
  • password 处输入:hello1234
  • 点击Encrypt按钮
  • 复制出加密后的 Hash ;

image.png

  • 替换当前子文件夹中所有rdp扩展名的文件,替换password_hash为刚才复制的加密后Hash ;

image.png

  • 修改webdriver/opennode.bat
    • 修改f2etestHost变量为f2etest服务部署的IP地址或域名 ;
    • browsers变量修改为本机所部署的浏览器名称,多个浏览器以逗号间隔,浏览器名称和浏览器版本号之间以空格间隔,例如: IE 11,Chrome,Firefox 。

image.png

启动节点

  • 执行rdp\openAllNode.bat,然后打开一次所有的IE浏览器,进行首次初始化,同时启用所有安全区域的保护模式 ;

image.png

  • 第1步完成后,执行rdp\initAllNodes.bat,批量添加启动批处理 ;

  • 所有节点初始化完成后,将rdp\openAllNode.bat添加快捷方式到Administrator账号的系统自动启动文件夹,以实现开机自动打开所有的WebDriver节点 ;

  • 命令行输入:netplwiz,在高级用户控制面板中,取消对“要使用本机,用户需输入用户名和密码(E)”项的勾选。系统将弹出窗口要求输入默认登录系统的用户名和密码,输入完成后点击确定 ;

image.png

  • 重启操作系统,如果正常的话,所有节点在3分钟左右之后应该会自动启动 ;

image.png

  • 关闭保护模式(需要到每个节点的远程桌面中关闭)。

    • IE浏览器 -> Ineternet选项,安全,对应4个Tab都需要关闭保护模式,否则报“Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones”的错误

小结

通过对问题的整理和WebDriver云的搭建,进一步对F2etest有所理解;

下一步将结合UIRecorder一起使用,以实现便捷的UI自动化测试;

下附官方文档链接,为其作者点赞。

[1] WebDriver 云的安装部署