A Web end-to-end testing framework.

Overview
xbell

一款舒适的自动化测试框架

文档

XBell 站点

特性

  • 基于 playwright 的异步测试框架
  • 基于 TypeScript 提供多功能装饰器
  • 多套数据环境支持

快速开始

# 初始化一个项目
$ npm create xbell
# 进入项目
$ cd <your-project-name>
# 安装浏览器(需要等待些时间)
$ npm run install:browser
# 运行用例
$ npm run start

TDOO

  • html 测试报告
  • 生成 bug/videos,用于bug回放和协同
  • 快照确认 - 当快照出现 diff 时,命令行提示是否确认更新

常用装饰器

装饰器 类型 描述 例子 已支持
@Group Class 测试分组 @Group('登录测试')
@RunEnvs Class/Method 用例只在某环境运行:当功能未上线时,指定仅在某环境测试 @RunEnvs(['fat'])
@RunBrowsers Class/Method 指定用例运行的环境 @RunBrowsers(['webkit', 'chromium']) TODO
@Inject Property 注入 @Inject() \n ctx: Context;
@Case Method 测试用例声明 @Case('登录成功')
@Depend Method 用例依赖 待补充
@Data Parameter 多环境数据 @Data({ dev: 'devData', prod: 'prodData' })
@BatchData Method 批量数据 待补充
@Fixture Method 待补充(可参考 palywright - fixture) 待补充 TODO
@BeforeEachCase Method 每个用例执行前将运行的逻辑 待补充
@AfterEachCase Method 每个用例执行完将运行的方法 待补充
@Data.Param Parameter 多环境数据 - 注入的参数 待补充
@BatchData.Param Parameter 批量数据- 注入的参数 待补充
@Fixture.Param Parameter 批量数据- 注入的参数 待补充 TODO

断言

装饰器 类型 描述 例子 已支持
@Expect.NoPageError Method 断言页面无报错 @Expect.NoPageError()
@Expect.ToMatchSnapshot Method 首次运行则生成快照,第二次运行将对比之前快照 @ToMatchSnapshot() TODO

非常用装饰器

装饰器 类型 描述 例子 已支持
@Only Class/Method 仅运行该用例 @Only() TODO
@Skip Class/Method 运行时跳过该用例 @Skip() TODO
@Fixme Class/Method 类似 Skip,区别在于:在测试报告中打上 Fixme,代表开发未修复 @Fixme() TODO
@Timeout() Class/Method 指定用例的异步超时时间, 例如接口较慢的页面可设置长时间 timeout,单位 ms @Timeout(30000) TODO
@Slow Class/Method 等价 @Timeout(60000) @Slow() TODO
@Fast Class/Method 等价 @Timeout(5000) @Fast() TODO
You might also like...

A modular front-end framework - inspired by the server-side and Web Components.

The NX framework Home page, Docs NX is a modular front-end framework - built with ES6 and Web Components. The building blocks of NX are the core, the

Dec 5, 2022

Monkey testing library for web apps and Node.js

Monkey testing library for web apps and Node.js

gremlins.js A monkey testing library written in JavaScript, for Node.js and the browser. Use it to check the robustness of web applications by unleash

Dec 31, 2022

Purple hats Desktop is a customisable, automated web accessibility testing tool that allows software development teams to find and fix accessibility problems to improve persons with disabilities (PWDs) access to digital services.

Purple hats Desktop is a customisable, automated web accessibility testing tool that allows software development teams to find and fix accessibility problems to improve persons with disabilities (PWDs) access to digital services.

Purple HATS Desktop Purple hats Desktop is a desktop frontend for Purple HATS accessibility site scanner - a customisable, automated web accessibility

May 11, 2023

Personal Blog - a project developed with Angular for the front-end interface and Wordpress for the back-end API served with Docker containers

Personal Blog - a project developed with Angular for the front-end interface and Wordpress for the back-end API served with Docker containers

PersonalBlog This project was generated with Angular CLI version 13.0.1. Front-end Interface Development server Run ng serve or ng serve --configurati

Oct 5, 2022

It consists of a recreation of Twitter, to put into practice both Front-end and Back-end knowledge by implementing the MERN Stack together with other technologies to add more value to the project.

Twitter-Clone_Back-end ✨ Demo. 💻 About the project. 📜 Descriptions. It consists of a recreation of Twitter, to put into practice knowledge of both F

Apr 12, 2022

End-to-end encrypted environments

End-to-end encrypted environments

Welcome to the EnvKey v2 monorepo! All EnvKey's open source code lives here. End-to-end encrypted environments Fixes configuration sprawl and sloppy s

Jan 1, 2023

Access the internals of React components from Cypress end-to-end tests

cypress-react-app-actions Access the internals of React components from Cypress end-to-end tests Read Access React Components From Cypress E2E Tests a

May 12, 2022

End-to-end typesafe APIs with tRPC.io in SvelteKit applications

✨ tRPC-SvelteKit End-to-end typesafe APIs with tRPC.io in SvelteKit applications. No code generation, run-time bloat, or build pipeline. ❤️ 🇺🇦 See b

Dec 29, 2022

It consists of a recreation of Twitter, to put into practice knowledge of both Front-end and Back-end implementing the MERN Stack along with other technologies to add more value to the project.

It consists of a recreation of Twitter, to put into practice knowledge of both Front-end and Back-end implementing the MERN Stack along with other technologies to add more value to the project.

Twitter-Clone_Front-end ✨ Demo. Login Home Profile Message Notifications Deployed in: https://twitter-clone-front-end.vercel.app/ 💻 About the project

Jun 26, 2022
Comments
No-code test automation solution for end-to-end testing

No-code test automation tool for end-to-end testing Table of Contents About Features Installation Usage Creating tests Running tests Roadmap Our Team

OSLabs Beta 63 Oct 18, 2022
Javascript-testing-practical-approach-2021-course-v3 - Javascript Testing, a Practical Approach (v3)

Javascript Testing, a Practical Approach Description This is the reference repository with all the contents and the examples of the "Javascript Testin

Stefano Magni 2 Nov 14, 2022
AREX: It is a “Differential Testing” and “Record and Replay Testing” Tool.

AREX: It is a “Differential Testing” and “Record and Replay Testing” Tool. Test restful API by record, replay and stub request/response. Differential

ArexTest 15 Nov 1, 2022
A new generation GUI automation framework for Web and Desktop Application Testing and Automation.

Clicknium-docs Clicknium is a new generation GUI automation framework for all types of applications. It provides easy and smooth developer experience

null 109 Dec 19, 2022
Shield is a development framework for circom developers. The core reason is to provide libraries, plugins, and testing tools to ensure code quality and security.

SHIELD Shield is a development framework for circom developers but we plan it to other languages such as CAIRO, SNARKYJS etc. The core reason is to pr

Xord 41 Dec 22, 2022
🏭 Framework-agnostic model factory system for clean testing

@julr/factorify Framework-agnostic model factory system for clean testing. Built-on top of Knex + Faker, and heavily inspired by Adonis.js and Laravel

Julien Ripouteau 14 Sep 29, 2022
Jest is a delightful JavaScript Testing Framework with a focus on simplicity.

Getting Started with Jest Jest is a delightful JavaScript Testing Framework with a focus on simplicity. Built With Javascript Linters Jest Live Demo N

Didier Peran Ganthier 4 Dec 20, 2022
Harrison Njuguna 5 Nov 11, 2022
Pass trust from a front-end Algorand WalletConnect session, to a back-end web service

AlgoAuth Authenticate to a website using only your Algorand wallet Pass trust from a front-end Algorand WalletConnect session, to a back-end web servi

Nullable Labs 16 Dec 15, 2022
Web-Technology with Aj Zero Coding. In this tutorial we learn front-end and back-end development.

Installation through NPM: The jQWidgets framework is available as NPM package: jQuery, Javascript, Angular, Vue, React, Web Components: https://www

Ajay Dhangar 3 Nov 19, 2022