Web sayfasını indirmek için Selenyum kodu kullanın

2 Cevap php

I have installed Selenium IDE on Firefox and manage to record and play various web navigation sequences. What I need is to do it all automated through PHP, i.e. run a PHP script which gets the HTML source of the final page (i.e. at end of navigation sequence). Within Selenium there is an option to export to PHP, so I get something like:

class Example extends PHPUnit_Extensions_SeleniumTestCase
{
  function setUp()
  {
    $this->setBrowser("*chrome");
    $this->setBrowserUrl("http://www.example.com/");
  }

  function testMyTestCase()
  {
    $this->open("/");
    $this->click("link=24");
    $this->waitForPageToLoad("30000");
    $this->click("link=Test2");
    $this->waitForPageToLoad("30000");
    $this->click("//td[4]/a/img");
    $this->waitForPageToLoad("30000");
    $this->type("username", "user");
    $this->type("password", "pass");
    $this->click("//input[@name='login']");
    $this->waitForPageToLoad("30000");
  }
}

Benim PHP kodu kullanabilirsiniz rağmen (sanırım sadece bir sınıf tanımı beri), bir şey yapmak için görünmüyor. Nasıl bu son kaynak sayfa alabilirim? Yerine ben zaman içinde PHP ayrıca bu son kaynak kodunu işlemek istiyorum, benim PHP kodu ekranda navigasyon yapmak istemiyorum unutmayın.

2 Cevap

PHP Seçenek İhracat (küçük bir ekstra çalışma ile) çalıştırmak Selenyum RC PHP sürücüsü kullanarak bir form your test ihraç edecek. Bu size aradığınız sayfayı ihraç etmiyor.

Out kutusunun Selenium IDE sayfanızın nihai kaynağını almak ve onunla bir şey yapmak için izin vermez. Ben ederim böyle bir şey başarmak için olsaydı

  1. Benim yaklaşım Reconsider

  2. Ben Selenyum IDE ile bunu yapmak istedim karar verirse, ben bir sayfanın kaynağını getirmek için Javascript kullanacağı yeni bir Selenyum eylemi yazmak, ve sonra bir URL'ye POST kullanıcı extension.js mekanizmasını kullanarak içine bakmak istiyorum benim seçeceğim

  3. Işleme gerisini PHP sayfası yukarıdaki URL olun.

Bu tür hacky olan kullanıcı-extension.js içine biraz araştırma (herkes için değil) gerektirir, ve kırılgan olması için bağlı ekstra özel çalışma olduğunu. (Seçenek # 1 bak)

Bu kolaylaştıran şeylerin bir çift.

Bu php üzerinden yapıyor zamanı geldiğinde 1) bir sunucuya bağlanmak gerekiyor.

2) O) gidin ve sunucu (selenyum-rc indir. - Java-jar selenyum-server.jar java-jar selenyum-server.jar yoluyla parametrelerini kontrol edin: yoluyla Run? (Sanırım!). Bu noktada önemli bir günlük dosyası konumu olacaktır.

3) Sunucu localhost ve port 4444 (yukarıda oluşturulan kod beklediği varsayılan) başlayacaktır.

4) Yukarıda php kod ile bağlanmayı deneyin. Lütfen selenyum-sunucu günlüğünü denetleyin. Bu denenen bağlantı ayrıntıları olmalıdır.