logo
0
0
WeChat Login

Web Test MCP

一个基于 Puppeteer 的网页测试工具,使用 Vitest 进行测试。

功能特性

  • fetchHtml: 获取网页HTML内容的函数
  • puppeteer: Puppeteer代码执行器,支持安全的网页自动化操作

安装依赖

pnpm install

测试命令

运行所有测试

pnpm test

运行测试并生成覆盖率报告

pnpm test:coverage

使用UI界面运行测试

pnpm test:ui

核心功能

fetchHtml

用于获取网页HTML内容的函数,支持:

  • 自定义请求头
  • 查询参数
  • 错误处理
import { fetchHtml } from './src/function/fetchHtml.js' const result = await fetchHtml({ url: 'https://example.com', headers: { 'User-Agent': 'Custom Agent' }, queryParams: { page: '1', limit: '10' } }) console.log(result) // { // state: true, // message: '请求成功', // data: '<html>...</html>' // }

Puppeteer 操作

提供安全的Puppeteer操作执行器:

import { executeSafePuppeteerOperations, PuppeteerOperations } from './src/function/puppeteer.js' const operations = [ PuppeteerOperations.navigateToUrl('https://example.com'), PuppeteerOperations.clickElement('#button'), PuppeteerOperations.typeText('#input', 'test text') ] const result = await executeSafePuppeteerOperations(operations) console.log(result)

测试覆盖率

当前测试覆盖率:

  • fetchHtml.ts: 100% 覆盖率
  • puppeteer.ts: 96.69% 覆盖率
  • 总体覆盖率: 67.41%

开发

启动开发服务器

pnpm dev

构建项目

pnpm build

启动应用

pnpm start

技术栈

  • TypeScript: 类型安全的JavaScript
  • Vitest: 快速的单元测试框架
  • Puppeteer: 无头浏览器自动化
  • Hono: 轻量级Web框架
  • pnpm: 高效的包管理器

About

No description, topics, or website provided.
Language
TypeScript73.9%
Markdown21.4%
gitignore2.8%
Dockerfile2%