phantomjsAan de slag met phantomjs


Opmerkingen

PhantomJS is een Selenium WebDriver zonder hoofd met JavaScript-ondersteuning.

Het is gebaseerd op WebKit, waardoor het zich op dezelfde manier gedraagt als Google Chrome of Safari.

Het is iets sneller dan een normale WebDriver zoals ChromeDriver of FirefoxDriver in zowel opstarttijd als prestaties.

PhantomJS heeft veel opties en services die het gedrag van de test wijzigen, zoals het verbergen van de opdrachtprompt of het niet laden van afbeeldingen.

Installatie of instellingen

Voor Visual Studio [NuGet]:

De eenvoudigste manier om PhantomJS te installeren, is met behulp van een NuGet Package Manager.

Klik in uw project met de rechtermuisknop op "Referenties" en klik op "NuGet-pakketten beheren" zoals weergegeven:

Visual Studio-schermafbeelding

Typ vervolgens "PhantomJS" in de zoekbalk, selecteer het en installeer het zoals hieronder weergegeven.

NuGet-pakketbeheerder

Hier is een lijst met andere aanbevolen pakketten:

  • Selenium.WebDriver - PhantomJS gebruiken met Selenium
  • Selenium.Support - Om de mogelijkheden van Selenium verder uit te breiden

Voeg nu deze referenties aan het begin toe:

using OpenQA.Selenium;
using OpenQA.Selenium.PhantomJS;
 

Nu kunt u het testen met een eenvoudig programma als dit [C #]:

using (var driver = new PhantomJSDriver())
{
    driver.Navigate().GoToUrl("http://stackoverflow.com/");

    var questions = driver.FindElements(By.ClassName("question-hyperlink"));

    foreach (var question in questions)
    {
        // This will display every question header on StackOverflow homepage.
        Console.WriteLine(question.Text);
    }
}
 

Een webpagina laden

var page = require('webpage').create();
page.open('http://www.google.com', function(status) {
  console.log("Status: " + status);
  var title = page.evaluate(function() {
    return document.title;
  });
  console.log("Loaded page: " + title);
  phantom.exit();
});