Capybara (programvare)



All kunnskapen som mennesket har samlet i århundrer om Capybara (programvare) er nå tilgjengelig på internett, og vi har samlet og bestilt den for deg på en mest mulig tilgjengelig måte. Vi vil at du skal kunne få tilgang til alt relatert til Capybara (programvare) som du vil vite raskt og effektivt; at opplevelsen din er hyggelig og at du føler at du virkelig har funnet informasjonen om Capybara (programvare) som du lette etter.

For å nå våre mål har vi gjort en innsats for ikke bare å få den mest oppdaterte, forståelige og sannferdige informasjonen om Capybara (programvare), men vi har også passet på at utformingen, lesbarheten, lastehastigheten og brukervennligheten til siden være så hyggelig som mulig, slik at du på denne måten kan fokusere på det essensielle, kjenne til all data og informasjon som er tilgjengelig om Capybara (programvare), uten å måtte bekymre deg for noe annet, vi har allerede tatt hånd om det for deg. Vi håper vi har oppnådd vårt formål og at du har funnet informasjonen du ønsket om Capybara (programvare). Så vi ønsker deg velkommen og oppfordrer deg til å fortsette å nyte opplevelsen av å bruke scientiano.com.

Capybara
Utvikler (er) Thomas Walpole
Stabil utgivelse
3.34.0 / 26. november 2020  ( 2020-11-26 )
Oppbevaringssted
Skrevet inn Rubin
Operativsystem Kryssplattform
Type Oppførelsdrevet utvikling rammeverk / testverktøy
Tillatelse MIT -lisens
Nettsted teamcapybara .github .io /capybara /

Capybara er en web-basert test automatisering programvare som simulerer scenarier for brukerhistorier og automatiserer web-applikasjon testing for atferd-drevet utvikling av programvare. Det er skrevet på programmeringsspråket Ruby .

Capybara kan etterligne handlinger av virkelige brukere som interagerer med nettbaserte applikasjoner. Den kan motta sider, analysere HTML og sende inn skjemaer .

Bakgrunn og motivasjon

I løpet av programvareutviklingsprosessen (spesielt i de agile og testdrevne utviklingsmiljøene ), etter hvert som størrelsen på testene øker, blir det vanskelig å administrere tester som er komplekse og ikke modulære.

Ved å utvide den menneskelesbare atferdsdrevne utviklingsstilen til rammer som Agurk og RSpec til selve automatiseringskoden, har Capybara som mål å utvikle enkle nettbaserte automatiserte tester.

Anatomi av Capybara

Capybara er et Ruby-bibliotek (også referert til som en perle ) som brukes med en underliggende nettbasert driver. Den består av et brukervennlig DSL (Domain Specific Language) som beskriver handlinger som utføres av den underliggende webdriveren.

Når siden er lastet inn med DSL (og underliggende webdriver), vil Capybara prøve å finne det relevante elementet i DOM (Document Object Model) og utføre en handling, for eksempel klikk -knapp, lenke, etc.

Drivere

Som standard bruker Capybara :rack_testdriveren som ikke har støtte for å kjøre JavaScript . Drivere kan slås inn før og etter blokker. Noen av webdriverne som støttes av Capybara, er nevnt nedenfor.

RackTest

Capybaras standarddriver RackTest, skrevet i Ruby, krever ikke at en server startes siden den samhandler direkte med Rack -grensesnitt. Følgelig kan den bare brukes til Rack -applikasjoner.

Selen

Selen -webdriver, som hovedsakelig brukes i nettbaserte automatiseringsrammer, støttes av Capybara. I motsetning til Capybaras standarddriver, støtter den JavaScript, kan få tilgang til HTTP -ressurser utenfor applikasjonen og kan også konfigureres for testing i hodeløs modus, noe som er spesielt nyttig for CI -scenarier.

Capybara-webkit

Capybara-webkit-driver (en perle) brukes til ekte hodeløs nettlesertesting med JavaScript-støtte. Den bruker QtWebKit, og den er betydelig raskere enn Selen, siden den ikke laster inn hele nettleseren.

Matchers

Capybara finner et element enten ved hjelp av domenespesifikt språk eller XPath / CSS Selectors . Delvise kamper kan føre til uventede resultater. To eller flere kamper kan til og med resultere i en feil med en tvetydig kampfeil. Følgende er de matchende strategiene som støttes av Capybara:

først: Velg det første elementet som matcher. Ikke tilrådelig å bruke.

en: Tillat bare ett element. Feil oppstått hvis mer enn én kamp.

smart: Hvis Capybara.exact er sant, oppfører den seg som alternativet ovenfor ( ett ). Hvis Capybara.exact er usann, vil den først prøve å finne en eksakt samsvar. Det er et tvetydig unntak hvis mer enn én kamp blir funnet. Hvis ingen elementer blir funnet, starter et nytt søk etter unøyaktige treff. Igjen, et tvetydig unntak blir hevet hvis mer enn én kamp blir funnet.

prefer_exact: Finner alle matchende (eksakte og som ikke er eksakte) elementer. Hvis flere treff blir funnet, returneres det første nøyaktig matchende elementet og kasserer andre treff.

Bruk

Brukerregistreringsprosess

Her er et eksempel på hvordan brukerregistreringstester utføres ved hjelp av Capybara. Det er en test for å se om brukeren kan fortsette med registreringsprosessen eller om det er noen sperringer på ham. Hvis han har de nødvendige legitimasjonene, blir han registrert og deretter omdirigert til velkomstsiden.

<ref>{{Cite web|title = Integration testing Devise with RSpec and Capybara|url = http://garyrafferty.com/2011/09/29/Testing-devise-with-rspec-and-capybara.html|website = garyrafferty.com|access-date = 2016-02-16|archive-url = https://web.archive.org/web/20160121204404/http://garyrafferty.com/2011/09/29/Testing-devise-with-rspec-and-capybara.html|archive-date = 2016-01-21|url-status = dead}}</ref>
  describe 'UserRegistration' do
    it 'allows a user to register' do
      visit new_user_registration_path
      fill_in 'First name', :with => 'New'
      fill_in 'Last name', :with => 'User'
      fill_in 'Email', :with => '[email protected]'
      fill_in 'Password', :with => 'userpassword'
      fill_in 'Password Confirmation', :with => 'userpassword'
      click_button 'Register'
      page.should have_content 'Welcome'
    end
  end

Capybara med agurk

Et eksempel på en Capybara -funksjon som brukes med agurk:

When /^I want to add/ do
    fill_in 'a', :with => 100
    fill_in 'b', :with => 100
    click_button 'Add'
end

Capybara med RSpec

Noen minutters integrasjon er nødvendig for å bruke Capybara med RSpec

describe 'go to home page' do
  it 'opens the home page' do
    visit (get_homepage)
    expect(page).to have_content('Welcome')
  end
end

Lignende verktøy

Se også

Referanser

  1. ^ "Utgivelser - teamcapybara/capybara" . Hentet 19. januar 2021 - via GitHub .
  2. ^ a b Engineering Software as a Service: An Agile Approach Using Cloud Computing . ISBN 9780984881246.
  3. ^ Applikasjonstesting med Capybara . ISBN 9781783281268.
  4. ^ a b c d "Grunnleggende om Capybara og forbedre testene dine" . SitePoint . Hentet 2016-02-08 .
  5. ^ Liss, Jo. "Capybara (og selen) med RSpec & Rails 3: rask opplæring" . www.opinionatedprogrammer.com . Hentet 2016-02-08 .

Opiniones de nuestros usuarios

Bente Lindberg

Jeg trengte å finne noe annerledes om Capybara (programvare), som ikke var den typiske tingen som alltid leses på internett, og jeg likte denne artikkelen av Capybara (programvare).

Bjarne Berntsen

Denne oppføringen om Capybara (programvare) var akkurat det jeg ønsket å finne.

Therese Hoff

Det er alltid godt å lære. Takk for artikkelen om Capybara (programvare).

Martha Tran

I dette innlegget om Capybara (programvare) har jeg lært ting jeg ikke visste, så jeg kan legge meg nå.

Ingeborg Kristiansen

Faren min utfordret meg til å gjøre leksene uten å bruke noe fra Wikipedia, jeg fortalte ham at jeg kunne gjøre det ved å søke på mange andre nettsteder. Heldig for meg fant jeg denne nettsiden og denne artikkelen om Capybara (programvare) hjalp meg med å fullføre leksene mine. Jeg nesten falt inn i Jeg ble fristet til å gå til Wikipedia, for jeg fant ikke noe om Capybara (programvare), men heldigvis fant jeg den her, for da sjekket faren min nettleserhistorikken for å se hvor han hadde vært. Kan du tenke deg om jeg kommer til gå til Wikipedia? Jeg er heldig at jeg fant denne nettsiden og artikkelen om Capybara (programvare) her. Det er derfor jeg gir deg mine fem stjerner.