Created
July 22, 2012 18:30
-
-
Save glenfant/3160614 to your computer and use it in GitHub Desktop.
Démonstration de Splinter
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# -*- coding: utf-8 -*- | |
"""Tests de www.alterway.fr avec splinter""" | |
# Préambule | |
import splinter | |
HOME = 'http://www.alterway.fr' | |
browser = splinter.Browser('firefox') | |
# On va à la page d'accueil | |
browser.visit(HOME) | |
# On vérifie la présence du widget de recherche | |
search_input = browser.find_by_id("edit-search-block-form--2").first | |
# On recherche "wampserver" | |
search_input.type("wampserver") | |
browser.find_by_id("edit-submit").click() | |
# On a bien atteint les résultats de recherche | |
assert browser.url == HOME + '/search/node/wampserver' | |
# On vérifie que la page /cas-client/wampserver est dans les résultats | |
wampserver_link = browser.find_link_by_text("Wampserver").first | |
assert wampserver_link._element.get_attribute('href') == HOME + '/cas-client/wampserver' | |
# On va énumérer les titres des résultats de recherche | |
results = browser.find_by_xpath('//*[@id="content-inner"]/ol').find_by_tag('a') | |
print "Résultats de la recherche de 'wampserver'" | |
for result in results: | |
print result.text, '->', result._element.get_attribute('href') | |
# Il y a pas d'autres pages de résultats | |
batch_nav = browser.find_by_css('.pager') | |
assert len(batch_nav) == 0 | |
# Un peu de javascript qui ajoute un élément en fin de page d'accueil avec jQuery | |
browser.visit(HOME) | |
browser.execute_script("""jQuery('body').append('<h2 id="test-h2">bla bla</h2>')""") | |
# On décore cet élément | |
browser.execute_script("""jQuery('[id="test-h2"]').addClass('footer')""") | |
# On recherche cet élément en Python | |
test_h2 = browser.find_by_id('test-h2').first | |
# Et on vérifie nos modifications | |
assert test_h2.text == u'bla bla' | |
assert test_h2['class'] == 'footer' | |
# Ciao bye | |
browser.quit() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment