Smoke testing core features
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
Comece pela interface auxiliar de cliente existente, incluindo client.CreateRoom, e pelos testes do Complement que a utilizam. Compare as interfaces propostas de usuário autenticado/token, atualizações em tempo real e salas com os cenários do matrix-authentication-service, sliding-sync e MSC4014; considera-se concluído quando houver uma abordagem definida de smoke testing, com seus modos de falha e escopo acordados.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Matrix has many moving parts. Tests typically only care about one single moving part at a time e.g send a message, create a room, upload OTKs. The setup code that happens to get to the point where we can test that moving part is for the most part, boilerplate. Complement has to date provided helper functions in client to do this sort of thing, failing the test if the boilerplate fails e.g client.CreateRoom. However, this then fixes the test into a certain way to setup the test. This is "okay" in that it is clear what is happening, but it limits the ability to do smoke tests:
smoke testing is preliminary testing or sanity testing to reveal simple failures severe enough to, for example, reject a prospective software release. Smoke tests are a subset of test cases that cover the most important functionality of a component or system, used to aid assessment of whether main functions of the software appear to work correctly.
There are several projects which would benefit from smoke testing:
- matrix-authentication-service - all tests could start by logging into MAS and getting MAS tokens before checking basic functionality (the tests) work.
- sliding-sync - all tests could use sliding sync APIs to consume live data rather than mandating sync v2.
- MSC4014 pseudo IDs - all tests could be made as pseudo ID rooms which would otherwise then function the same as a normal room.
These could "reasonably" be split into 3 interfaces:
- give me a logged in user and access token.
- give me live updates.
- give me a room.
There may be more. Smoke testing in this way is error-prone. Some tests will fail due to this setup in flakey ways, e.g:
- The MAS token expires.
- The sliding sync proxy didn't get the event, or the API doesn't expose the data you want to see in the test.
- The room version behaves in a subtley different way.
However, there is real value in being able to run a sanity check like this, even if it isn't fully reliable (read: likely not in CI).
- Linguagem predominante
- Go
- Estrelas
- 99
- Forks
- 72
- Merge médio
- 3d 5h
- PRs com merge (30d)
- 9
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de matrix-org/complement
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
matrix-org/complement#900 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
New tests for MSC4354 Sticky EventsTalvez já em andamento @reivilibre assumiu há 23 dias. Aberta
matrix-org/complement#925 · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 52/100
matrix-org/complement#901 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
matrix-org/complement#899 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
matrix-org/complement#898 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de matrix-org/complement
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 77/100
Mantenedores costumam responder em até 1 dia
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:session-state issue-rating: 🦞 diamond lobster no-stale P2
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
openclaw/wacli#503 · 1 comentário · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 81/100
apache/rocketmq-dashboard#6895 ·
Mantenedores costumam responder em até 3 dias
-
agent-butler-finding chore
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
jordansmall/spindrift#5466 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 92/100
open-telemetry/opentelemetry-go-compile-instrumentation#1507 ·
Mantenedores costumam responder em até 3 dias