Tendo problemas ao rodar testes no meu sistema WSL2

Você quer dizer que executar algo como isto falha localmente para você?

~/work/discourse [main] $ rspec spec/system/user_activity_bookmarks_spec.rb

Randomized with seed 38950
...

Finished in 7.71 seconds (files took 2.5 seconds to load)
3 examples, 0 failures

Muito obrigado! Eu aprovei o PR e irei mesclá-lo em breve.

3 curtidas

Sim,

Apenas meu teste funciona.
Testado no WSL2, Ubuntu 22.

(base) arkshine@HOME:~/discourse$ rspec spec/system/user_activity_bookmarks_spec.rb

Finished in 28.13 seconds (files took 4.64 seconds to load)
4 examples, 3 failures

Failed examples:

rspec ./spec/system/user_activity_bookmarks_spec.rb:36 # User activity bookmarks can filter the list of bookmarks from the URL
rspec ./spec/system/user_activity_bookmarks_spec.rb:43 # User activity bookmarks can filter the list of bookmarks
rspec ./spec/system/user_activity_bookmarks_spec.rb:50 # User activity bookmarks can clear the query

Nenhum favorito está registrado por algum motivo:

1 curtida

Alguma mensagem de falha após seus testes falharem?

Nenhum erro. Esta é a saída completa:

(base) arkshine@HOME:~/discourse$ rspec spec/system/user_activity_bookmarks_spec.rb
WARN: Especificações não resolvidas ou ambíguas durante Gem::Specification.reset:
      optimist (\u003e= 3.0.0)
      Versões disponíveis/instaladas desta gem:
      - 3.2.1
      - 3.2.0
      rdoc (\u003e= 4.0.0)
      Versões disponíveis/instaladas desta gem:
      - 6.12.0
      - 6.6.3.1
WARN: Limpando especificações não resolvidas. Tente 'gem cleanup \u003cgem\u003e'
Por favor, relate um bug se isso causar problemas.

Aleatório com semente 5318
OID desconhecido 931304: falha ao reconhecer o tipo de 'embeddings'. Será tratado como String.
FFF.

Falhas:

  1) Marcadores de atividade do usuário podem filtrar a lista de marcadores
     Falha/Erro: super

     Capybara::ElementNotFound:
       Não foi possível encontrar o campo "bookmark-search" que não esteja desabilitado

     [Imagem de Captura de Tela]: /home/arkshine/discourse/tmp/capybara/failures_r_spec_example_groups_user_activity_bookmarks_can_filter_the_list_of_bookmarks_300.png

     ~~~~~~~ LOGS DO JS ~~~~~~~
     ~~~~~ FIM DOS LOGS DO JS ~~~~

     # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:29:in `fill_in_search'
     # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
     # ./spec/system/user_activity_bookmarks_spec.rb:44:in `block (2 levels) in <main>'

  2) Marcadores de atividade do usuário podem filtrar a lista de marcadores a partir da URL
     Falha/Erro: expect(user_activity_bookmarks).to have_topic(bookmark_1.bookmarkable.topic)
       esperado `#<PageObjects::Pages::UserActivityBookmarks:0x00007f3d48e29f28>.has_topic?(#<Topic id: 917, title: "This is a test topic 0", last_posted_at: nil, created_at: "2025-03-21 02:48:...oad_id: nil, slow_mode_seconds: 0, bannered_until: nil, external_id: nil, visibility_reason_id: nil>)` ser verdadeiro, mas obteve falso

     [Imagem de Captura de Tela]: /home/arkshine/discourse/tmp/capybara/failures_r_spec_example_groups_user_activity_bookmarks_can_filter_the_list_of_bookmarks_from_the_url_846.png

     ~~~~~~~ LOGS DO JS ~~~~~~~
     ~~~~~ FIM DOS LOGS DO JS ~~~~

     # ./spec/system/user_activity_bookmarks_spec.rb:40:in `block (2 levels) in <main>'

  3) Marcadores de atividade do usuário podem limpar a consulta
     Falha/Erro: super

     Capybara::ElementNotFound:
       Não foi possível encontrar o campo "bookmark-search" que não esteja desabilitado

     [Imagem de Captura de Tela]: /home/arkshine/discourse/tmp/capybara/failures_r_spec_example_groups_user_activity_bookmarks_can_clear_the_query_761.png

     ~~~~~~~ LOGS DO JS ~~~~~~~
     ~~~~~ FIM DOS LOGS DO JS ~~~~

     # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:29:in `fill_in_search'
     # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
     # ./spec/system/user_activity_bookmarks_spec.rb:51:in `block (2 levels) in <main>'

Terminado em 21.11 segundos (arquivos levaram 5.2 segundos para carregar)
4 exemplos, 3 falhas

Exemplos com falha:

rspec ./spec/system/user_activity_bookmarks_spec.rb:43 # Marcadores de atividade do usuário podem filtrar a lista de marcadores
rspec ./spec/system/user_activity_bookmarks_spec.rb:36 # Marcadores de atividade do usuário podem filtrar a lista de marcadores a partir da URL
rspec ./spec/system/user_activity_bookmarks_spec.rb:50 # Marcadores de atividade do usuário podem limpar a consulta

Aleatório com semente 5318

Você já deu uma olhada rápida nas imagens? Acho que elas podem dar uma pista do porquê o executor de testes não está funcionando.

(Também estou um pouco decepcionado que nosso bot de IA ainda não nos incomodou para abrir um novo tópico :wink: )

editar problema resolvido…

2 curtidas

Coloquei um sleep em um teste e iniciei o rspec com SELENIUM_HEADLESS=0.
Descobri que posso ver os tópicos criados, MAS não consigo acessá-los.
Isso explica por que não vejo os marcadores!

Imediatamente, isso me lembra de um problema que encontrei toda vez que fiz testes no TC ou executei testes existentes: se houver um tópico fab sem uma categoria definida, não consigo acessá-lo nos testes.

Então, se eu fizer o seguinte:

Eu vejo os marcadores:

E os testes estão funcionando:
image

Não está claro por que isso acontece no meu ambiente.
Existem muitos tópicos fab sem categorias especificadas nos testes principais, e os testes funcionam no GitHub. Qual é a diferença?