Introdução geral
O Shortest é uma estrutura de teste de ponta a ponta em linguagem natural alimentada por IA, desenvolvida pela equipe do Anti-Work. Ele foi desenvolvido com base no Playwright e oferece suporte à integração com o GitHub e à autenticação de dois fatores (2FA). O principal recurso do Shortest é escrever casos de teste por meio de linguagem natural e utilizar o Anthropic Claude API para execução de testes orientados por IA. A estrutura foi projetada para simplificar o processo de teste, melhorar a eficiência do teste e permitir que os desenvolvedores escrevam e mantenham casos de teste com mais facilidade.
Lista de funções
- Redação de testes em linguagem naturalEscrever casos de teste em linguagem natural reduz o limite para escrever testes.
- Execução de testes orientada por IAExecução de testes orientados por IA com um alto grau de automação usando a API Anthropic Claude.
- Baseado no dramaturgoCriado com base no Playwright para oferecer automação avançada do navegador.
- Integração com o GitHubIntegração perfeita com o GitHub é suportada, incluindo autenticação de dois fatores (2FA).
- verificação de e-mailValidação de e-mail via Mailosaur: a validação de e-mail via Mailosaur garante testes abrangentes.
- função de retorno de chamadaSuporte para adicionar asserções e lógica adicionais usando funções de retorno de chamada.
- gancho de ciclo de vidaFornece ganchos de ciclo de vida que permitem que a lógica personalizada seja executada antes e depois da execução do teste.
Usando a Ajuda
Processo de instalação
- Instale o Shortest usando npm, pnpm ou yarn:
npm install -D @antiwork/shortest
# ou
pnpm add -D @antiwork/shortest
- comandante-em-chefe (militar)
.shortest/
adicionar a.gitignore
para armazenar capturas de tela e caches de cada execução de teste:
echo ".shortest/" >> .gitignore
- Identifique o portal de teste e adicione a chave da API do Anthropic ao arquivo de configuração:
// shortest.config.ts
importar tipo { ShortestConfig } de "@antiwork/shortest";
exportar padrão {
shortestConfig: "@antiwork/shortest"; export default { headless: false,
baseUrl: "http://localhost:3000",
testPattern: "**/*.test.ts",
anthropicKey: process.env.ANTHROPIC_API_KEY, } satisfaz ShortestConffiguration.
} satisfaz ShortestConfig.
Processo de uso
- Escreva casos de teste:
// app/__tests__/login.test.ts
importar { shortest } de "@antiwork/shortest";
shortest("Faça login no aplicativo usando e-mail e senha", {
nome de usuário: process.env.GITHUB_USERNAME, senha: process.env.
senha: process.env.GITHUB_PASSWORD, }); shortest("Faça login no aplicativo usando e-mail e senha", { nome de usuário: process.env.
}).
- Use funções de retorno de chamada para adicionar mais asserções e lógica:
importar { shortest } de "@antiwork/shortest";
import { db } from "@/lib/db/drizzle";
import { users } from "@/lib/db/schema";
shortest("Faça login no aplicativo usando nome de usuário e senha", {
nome de usuário: process.env.USERNAME, senha: process.env.
password: process.env.PASSWORD, }).after(async).
}).after(async ({ page }) => {
const clerkId = await page.evaluate(() => {
return window.localStorage.getItem("clerk-user");
});
se (!clerkId) {
lançará um novo erro ("Usuário não encontrado no banco de dados"); }
}
const [user] = await db
.select()
.from(users)
.where(eq(users.clerkId, clerkId))
.limit(1); expect(user).toBeDefined()
expect(user).toBeDefined();
}).
teste operacional
- Execute testes usando npx, pnpm ou yarn:
npx mais curto
# ou
pnpm mais curto
# ou
yarn shortest
Funções detalhadas
- Redação de testes em linguagem naturalO Shortest permite que os usuários escrevam casos de teste usando linguagem natural, como "faça login no aplicativo e use seu e-mail e senha". Essa abordagem reduz a barreira técnica para a criação de testes e permite que pessoas não técnicas participem da criação de testes.
- Execução de testes orientada por IAShortest: O Shortest aproveita a API Anthropic Claude para a execução de testes orientados por IA, que entende e executa casos de teste de forma inteligente para melhorar a automação e a precisão dos testes.
- Baseado no dramaturgoShortest: O Shortest foi desenvolvido com base no Playwright e oferece automação avançada do navegador com suporte para testes em vários navegadores e dispositivos.
- Integração com o GitHubO Shortest oferece suporte à integração perfeita com o GitHub, incluindo a autenticação de dois fatores (2FA), garantindo a segurança e a confiabilidade do processo de teste.
- verificação de e-mailA validação de e-mail via Mailosaur garante testes abrangentes e precisos.
- função de retorno de chamadaShortest: O Shortest suporta o uso de funções de retorno de chamada para adicionar asserções e lógica adicionais, permitindo que os usuários realizem validação e manipulação adicionais após a execução do teste.
- gancho de ciclo de vidaShortest: O Shortest fornece ganchos de ciclo de vida que permitem que os usuários executem lógica personalizada antes e depois da execução do teste, como a configuração do ambiente de teste antes do teste e a limpeza dos dados de teste após o teste.