51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

k8s 环境使用 UI 测试

UI 测试使用 需要 开启 UI 测试模块以及部署 Selenium-Hub 服务

1 开启 UI 测试模块 {#1-%E5%BC%80%E5%90%AF-ui-%E6%B5%8B%E8%AF%95%E6%A8%A1%E5%9D%97}

MS 默认不开启 UI 模块。若要开启 UI 模块,则需要修改 helm-chart 的 values.yml ,将 enabled: false 改为 true

#编辑 values.yml文件
vi values.yml

#更新服务
helm upgrade metersphere metersphere-2.10.15.tgz -f metersphere/values.yaml -n metersphere
`#查询 ui-test 服务
kubectl get pod -n metersphere`

查询 metersphere 服务,ui-test 服务已正常启动

2 部署 selenium-hub 服务 {#2-%E9%83%A8%E7%BD%B2-selenium-hub-%E6%9C%8D%E5%8A%A1}

可使用 deploy 模板部署或者下载官方离线包部署 selenium-hub 服务。

2.1 使用 deploy 模板 {#2.1-%E4%BD%BF%E7%94%A8-deploy-%E6%A8%A1%E6%9D%BF}

vi ms-selenium-hub.yaml  #

将下面内容粘贴进 ms-selenium-hub.yaml 里

apiVersion: apps/v1
kind: Deployment
metadata:
  name: selenium-hub
  namespace: metersphere
spec:
  selector:
    matchLabels:
      app: selenium-hub
  replicas: 1
  template:
    metadata:
      labels:
        app: selenium-hub
    spec:
      volumes:
      - name: dshm
        emptyDir:
            medium: Memory
      containers:
        - name: selenium-hub
          image: registry.cn-qingdao.aliyuncs.com/metersphere/seleniarm-grid-all:4.1.4-20220519
          imagePullPolicy: IfNotPresent
          volumeMounts:
          - mountPath: /dev/shm
            name: dshm
          env:
            - name: TZ
              value: Asia/Shanghai
            - name: SE_EVENT_BUS_HOST
              value: "127.0.0.1"
            - name: SE_EVENT_BUS_PUBLISH_PORT
              value: "4442"
            - name: SE_EVENT_BUS_SUBSCRIBE_PORT
              value: "4443"
            - name: SE_HUB_PORT
              value: "4444"
            - name: SE_NODE_MAX_SESSIONS
              value: "300"
            - name: SE_NODE_OVERRIDE_MAX_SESSIONS
              value: "true"
            - name: browser
              value: "chrome"
---
apiVersion: v1
kind: Service
metadata:
  name: selenium-hub
  namespace: metersphere
spec:
  ports:
    - name: selenium-hub
      port: 4444
      targetPort: 4444
      nodePort: 30444
  type: NodePort
  selector:
    app: selenium-hub

#使 ms-selenium-hub.yaml 生效 kubectl apply -f ms-selenium-hub.yaml #查询 ms-selenium-hub 服务 kubectl get pod -n metersphere


查询 metersphere 服务,selenium-hub 服务已正常启动

登录 MS 平台,在【系统设置-系统参数设置-基本配置-selenium-grid 地址】配置 http://selenium-hub:4444

创建 UI 自动化场景,点击生成报告,该场景正常执行。

2.2 下载 selenium-grid 安装包 {#2.2-%E4%B8%8B%E8%BD%BD-selenium-grid-%E5%AE%89%E8%A3%85%E5%8C%85}

可下载最新 selenium-grid 版本进行安装,此处以 selenium-grid-0.19.0.tgz 版本为例。

# 执行安装命令
helm install selenium selenium-grid-0.19.0.tgz -n metersphere

查看 selenium-hub / selenium-chrome-node/ selenium-edge-node / selenium-firefox-node 是否正常起来

kubectl get pod -n metersphere


在【系统设置-系统参数设置-基本配置-selenium-grid 地址】处填写 http://selenium-hub:4444

执行 UI 自动化场景,点击生成报告,正常运行


selenium-grid-0.19.0.tgz 下载

selenium-grid-0.19.0.tgz

赞(1)
未经允许不得转载:工具盒子 » k8s 环境使用 UI 测试