Dans le test d'intégration, le code qui fonctionnait auparavant générait une erreur. La cause était inattendue, j'ai donc décidé de le laisser sous forme d'article (bien que ce ne soit pas un mémorandum)
Terminal
Failures:
1)utilisateur Avant l'enregistrement de l'utilisateur Pouvez-vous saisir les informations relatives aux membres?
Failure/Error: expect(page).to have_content("Entrez les informations de livraison")
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:20:in `block (3 levels) in <top (required)>'
2)l'utilisateur ne peut pas se connecter avant l'enregistrement de l'utilisateur
Failure/Error: expect(page).to have_content("Cliquez ici si vous n'avez pas de compte")
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:29:in `block (3 levels) in <top (required)>'
3)utilisateur Avant l'enregistrement de l'utilisateur Appuyez sur le bouton Liste des produits pour accéder à la page de connexion.
Failure/Error: expect(page).to have_content("Cliquez ici si vous n'avez pas de compte")
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:35:in `block (3 levels) in <top (required)>'
4)utilisateur Ma page s'affiche dans l'en-tête si vous pouvez vous connecter après l'enregistrement de l'utilisateur
Failure/Error: expect(page).to have_content "Ma page"
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:50:in `block (3 levels) in <top (required)>'
5)utilisateur Vous pouvez vous déconnecter après vous être enregistré en tant qu'utilisateur
Failure/Error: expect(page).to have_content "Inscription des nouveaux membres"
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:56:in `block (3 levels) in <top (required)>'
6)utilisateur Si vous appuyez sur le bouton de liste de produits après l'enregistrement de l'utilisateur, vous serez redirigé vers la page de liste.
Failure/Error: expect(page).to have_content("Image de l'exposition")
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible xpath "/html"
# ./spec/features/user_spec.rb:61:in `block (3 levels) in <top (required)>'
7) Item#créer ne peut pas enregistrer l'image(image)Si vous ne l'avez pas, vous ne pouvez pas vous inscrire
Failure/Error: expect(item.errors[:images]).to include("Entrez s'il vous plait")
expected [] to include "Entrez s'il vous plait"
# ./spec/models/item_spec.rb:33:in `block (4 levels) in <top (required)>'
before
haml:application.html.haml
!!!
%html
%head
%meta{content: "text/html; charset=UTF-8", "http-equiv": "Content-Type"}/
%title FreemarketSample68d
%script{src: "https://js.pay.jp/", type: "text/javascript"}
%meta{:content => "summary_large_image", :name => "twitter:card"}/
%meta{:content => "@yGZqMc5IqNbVsw0", :name => "twitter:site"}/
%meta{:content => "http://52.198.247.0/", :property => "og:url"}/
%meta{:content => "freemarket_sample", :property => "og:title"}/
%meta{:content => "Ceci est un exemple pour le développement d'équipe! S'il vous plaît, jetez un oeil!", :property => "og:description"}/
%meta{:content => "logo-white.png ", :property => "og:image"}/
= favicon_link_tag 'favicon.ico'
= csrf_meta_tags
= csp_meta_tag
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
= javascript_include_tag 'application', 'data-turbolinks-track': 'reload'
%body
= yield
after
haml:application.html.haml
!!!
%html
%head
%meta{content: "text/html; charset=UTF-8", "http-equiv": "Content-Type"}/
%title FreemarketSample68d
%script{src: "https://js.pay.jp/", type: "text/javascript"}
%meta{:content => "summary_large_image", :name => "twitter:card"}/
%meta{:content => "@yGZqMc5IqNbVsw0", :name => "twitter:site"}/
%meta{:content => "http://52.198.247.0/", :property => "og:url"}/
%meta{:content => "freemarket_sample", :property => "og:title"}/
%meta{:content => "Ceci est un exemple pour le développement d'équipe! S'il vous plaît, jetez un oeil!", :property => "og:description"}/
%meta{:content => "logo-white.png ", :property => "og:image"}/
= favicon_link_tag 'favicon.ico'
= csrf_meta_tags
= csp_meta_tag
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
= javascript_include_tag 'application', 'data-turbolinks-track': 'reload'
%body
= yield
Même dans l'état précédent, une erreur ne s'est pas produite en tant qu'application, mais une erreur s'est produite lors du test d'intégration.
La raison semble être qu'il n'y a pas d'imbrication par défaut dans application.html.haml. Si vous n'imbriquez pas de balises meta ou de favicon, vous obtiendrez des erreurs à d'autres endroits, alors soyez prudent!
Recommended Posts