k8s 环境使用 UI 测试


飞致云 发布于 2024-06-25 / 234 阅读 / 0 评论 /
k8s 环境使用 UI 测试

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

1 开启 UI 测试模块

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 服务

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

2.1 使用 deploy 模板

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 安装包

可下载最新 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



是否对你有帮助?