颠覆传统软件测试!Browser Use WebUI+DeepSeek:软件测试行业的革命性突破_kbg30zmt256g
前置信息
硬件配置
处理器 : Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz (四核 / 八逻辑处理器)主板 : 20N8002UCD内存 : 8GB(RMSA3260ME78HAF-2666 DDR4 2667 MT/s)显示适配器 : Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X]/WhiskeyLake-U GT2 [UHD Graphics 620]音频适配器 : Cannon Point-LP High Definition Audio Controller存储设备 : KBG30ZMT256G TOSHIBA (256 GB)蓝牙 : WEL-PC网络适配器 : RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller鼠标 : 2.4GHz Wireless rechargeable vertical mouse [More&Better] (SHARKOON 2.4GHz Wireless rechargeable vertical mouse [More&Better])/SynPS/2 Synaptics TouchPad (SynPS/2 Synaptics TouchPad)/TPPS/2 Elan TrackPoint (TPPS/2 Elan TrackPoint)键盘 : AT Translated Set 2 keyboard (AT Translated Set 2 keyboard)显示设备 : AUO LCD Monitor(13.9 英寸(309mm X 173mm))打印机 : Hewlett-Packard-HP-小屋/HP-LaserJet-MFP-M232-M237-driverless图像设备 : Integrated Camera (IMC Networks Integrated Camera)
操作系统
WEL@WEL-PC:/etc$ more os-release PRETTY_NAME=\"Deepin 25\"NAME=\"Deepin\"VERSION_CODENAME=beigeID=deepinHOME_URL=\"https://www.deepin.org/\"BUG_REPORT_URL=\"https://bbs.deepin.org\"VERSION_ID=\"25\"VERSION=\"25\"WEL@WEL-PC:/etc$
软件信息
- docker-ce:
WEL@WEL-PC:/etc$ docker infoClient: Docker Engine - Community Version: 26.1.4 Context: default Debug Mode: falseServer:ERROR: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get \"http://%2Fvar%2Frun%2Fdocker.sock/v1.45/info\": dial unix /var/run/docker.sock: connect: permission deniederrors pretty printing infoWEL@WEL-PC:/etc$
- docker-compose
WEL@WEL-PC:/etc$ sudo apt install docker-composeWEL@WEL-PC:/etc$ docker-compose --versiondocker-compose version 1.29.2, build unknownWEL@WEL-PC:/etc$
- Browser Use WebUI: 1.6
https://github.com/browser-use/web-ui
https://api-docs.deepseek.com/zh-cn/deepseek api测试脚本 https://platform.deepseek.com/api_keys
curl https://api.deepseek.com/chat/completions \\ -H \"Content-Type: application/json\" \\ -H \"Authorization: Bearer \" \\ -d \'{ \"model\": \"deepseek-chat\", \"messages\": [ {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"}, {\"role\": \"user\", \"content\": \"Hello!\"} ], \"stream\": false }\'
构建镜像
下载web-ui-1.6版本解压之后,进入对应目录执行:
WEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ docker build -t web-ui:1.6 .WEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ sudo docker images请输入密码:验证成功REPOSITORY TAG IMAGE ID CREATED SIZEweb-ui 1.6 e2a50c2c9558 19 hours ago 3.28GBweltest latest 7f2c45ad211a 44 hours ago 868MBpython 3.11-slim acf740710f69 3 months ago 130MBWEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$
依据网络网络,构建真题耗时在1~2小时。
调整docker-compose.yml文件
调整之后如下:
services: browser-use-webui: image: web-ui:1.6 ports: - \"7788:7788\" # Gradio default port - \"6080:6080\" # noVNC web interface - \"5900:5900\" # VNC port - \"9222:9222\" # Chrome remote debugging port environment: - OPENAI_ENDPOINT=${OPENAI_ENDPOINT:-https://api.openai.com/v1} - OPENAI_API_KEY=${OPENAI_API_KEY:-} - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-} - GOOGLE_API_KEY=${GOOGLE_API_KEY:-} - AZURE_OPENAI_ENDPOINT=${AZURE_OPENAI_ENDPOINT:-} - AZURE_OPENAI_API_KEY=${AZURE_OPENAI_API_KEY:-} - DEEPSEEK_ENDPOINT=${DEEPSEEK_ENDPOINT:-https://api.deepseek.com} - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:- } - BROWSER_USE_LOGGING_LEVEL=${BROWSER_USE_LOGGING_LEVEL:-info} - ANONYMIZED_TELEMETRY=false - CHROME_PATH=/usr/bin/google-chrome - CHROME_USER_DATA=/app/data/chrome_data - CHROME_PERSISTENT_SESSION=${CHROME_PERSISTENT_SESSION:-false} - DISPLAY=:99 - PLAYWRIGHT_BROWSERS_PATH=/ms-playwright - RESOLUTION=${RESOLUTION:-1920x1080x24} - RESOLUTION_WIDTH=${RESOLUTION_WIDTH:-1920} - RESOLUTION_HEIGHT=${RESOLUTION_HEIGHT:-1080} - VNC_PASSWORD=${VNC_PASSWORD:-vncpassword} - CHROME_DEBUGGING_PORT=9222 - CHROME_DEBUGGING_HOST=localhost volumes: - /tmp/.X11-unix:/tmp/.X11-unix restart: unless-stopped shm_size: \'2gb\' cap_add: - SYS_ADMIN security_opt: - seccomp=unconfined tmpfs: - /tmp healthcheck: test: [\"CMD\", \"nc\", \"-z\", \"localhost\", \"5900\"] interval: 10s timeout: 5s retries: 3
在yaml中的 - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:- }
中增加对应的api-key
启动Browser Use WebUI
WEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ sudo docker-compose up -d
如果要重新拉取执行命令:
WEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ sudo docker-compose downStopping web-ui-16_browser-use-webui_1 ... doneRemoving web-ui-16_browser-use-webui_1 ... doneRemoving network web-ui-16_defaultWEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ sudo docker-compose up -dCreating network \"web-ui-16_default\" with the default driverCreating web-ui-16_browser-use-webui_1 ... doneWEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$
执行如下命令查看日志:
WEL@WEL-PC:~/Downloads/web-ui-1.6/web-ui-1.6$ sudo docker logs -f web-ui-16_browser-use-webui_12025-03-06 03:28:31,329 DEBG \'x11vnc_log\' stdout output:06/03/2025 03:28:30 Got connection from client 127.0.0.106/03/2025 03:28:30 0 other clients06/03/2025 03:28:30 webSocketsHandshake: unknown connection error06/03/2025 03:28:30 Client 127.0.0.1 gone06/03/2025 03:28:30 Statistics events Transmit/ RawEquiv ( saved)06/03/2025 03:28:30 TOTALS : 0 | 0/ 0 ( 0.0%)06/03/2025 03:28:30 Statistics events Received/ RawEquiv ( saved)06/03/2025 03:28:30 TOTALS : 0 | 0/ 0 ( 0.0%)
成功之后在界面输入:http://localhost:7788/
-
⚙️ Agent Settings
-
🔧 LLM Configuration
下面为deepseek页面,如果没有充值会提示如下
[\"Error code: 402 - {\'error\': {\'message\': \'Insufficient Balance\', \'type\': \'unknown_error\', \'param\': None, \'code\': \'invalid_request_error\'}}\", \"Error code: 402 - {\'error\': {\'message\': \'Insufficient Balance\', \'type\': \'unknown_error\', \'param\': None, \'code\': \'invalid_request_error\'}}\", \"Error code: 402 - {\'error\': {\'message\': \'Insufficient Balance\', \'type\': \'unknown_error\', \'param\': None, \'code\': \'invalid_request_error\'}}\", \"Error code: 402 - {\'error\': {\'message\': \'Insufficient Balance\', \'type\': \'unknown_error\', \'param\': None, \'code\': \'invalid_request_error\'}}\", \"Error code: 402 - {\'error\': {\'message\': \'Insufficient Balance\', \'type\': \'unknown_error\', \'param\': None, \'code\': \'invalid_request_error\'}}\"]
- 🌐 Browser Settings
依据机器i配置修改分辨率,使用默认选项,如果g使用自己浏览器需要参考官网增加浏览器配置
- 🤖 Run Agent
在该模块增加认为描述,类似与BDD,行为驱动操作点击运行:
打开页面,访问\'https://www.baidu.com\',查询`WELI测试`,搜返回结果第一条
- 📊 Results
在该模块可以看执行结果:
感受
总体有以下几点感受:
- 部署较为快捷、简便,就是构建镜像时耗时比较就,建议一次构建多次使用
- 对设备要求可能较高,在当前配置,整体响应较慢
- 整体界面识别精确,数据结构清晰
- 界面没有保存功能,刷新,界面配置信息需要重新填写
- 可以与之前BDD测试方法结合,能无代码进行测试