Bagaimana untuk menyediakan persekitaran php selenium

藏色散人
Lepaskan: 2023-03-17 11:48:01
asal
1489 orang telah melayarinya

Kaedah persediaan persekitaran PHP Selenium: 1. Muat turun pakej termampat zip PHP versi selamat benang terkini 2. Salin salinan "php.ini-development" dan namakan semula kepada "php.ini" dan letakkannya dalam laluan pemasangan; 3. Tetapkan Laluan di bawah pembolehubah sistem kepada "D:Softwarephp-7.2.28-Win32-VC15-x64;".

Bagaimana untuk menyediakan persekitaran php selenium

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.

Bagaimana untuk menyediakan persekitaran php selenium?

Pembinaan persekitaran selenium PHP dalam persekitaran tingkap

Baru-baru ini saya ingin memulakan ujian automatik, saya juga telah menulis tentang penggunaan codeception untuk ujian unit dan antara muka ujian, UI Saya memilih rangka kerja selenium untuk bahagian ujian, dan kemudian kami akan menyediakan persekitaran yang berkaitan.

  • Pembinaan persekitaran PHP

1 Masukkan alamat muat turun PHP http://windows.php.net/download untuk memuat turun versi PHP yang selamat dari benang terbaharu zip pakej dan nyahzipnya Mampatkan dan letakkannya di laluan di mana anda mahu memasangnya. (Perlu diingatkan di sini bahawa sistem win7 tidak boleh menggunakan versi php7.4, dan ia akan menggesa bahawa VCRUNTIME140.dll tiada)

2 Masukkan direktori pemasangan PHP, salin salinan php.ini-development dan tukar nama Letakkan php.ini dalam laluan pemasangan, buka dan cari ;extension_dir=ext, alih keluar ulasan dan tukar nilai kepada laluan pemasangan PHP ext.

3. Klik kanan Computer->Properties->Advanced System Settings->Environment Variables->Path di bawah System Variables, klik Edit dan tambah laluan PHP D:Softwarephp-7.2 -Win32-VC15-x64;

Pada ketika ini, pemasangan PHP selesai Anda boleh membuka cmd untuk melihat versi yang sepadan, seperti yang ditunjukkan dalam rajah:

  • java Untuk menyediakan persekitaran berjalan, ia perlu diterangkan di sini bahawa fail selenium running ialah pakej jar Anda mesti menyediakan persekitaran berjalan java untuk mendayakan selenium.

Masukkan tapak web rasmi, https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html, cari versi yang disesuaikan dan muat turun jdk.

  • Muat turun fail selenium, http://selenium-release.storage.googleapis.com/index.html (alamat muat turun selenium) Muat turun selenium- Fail pakej jar server-standalone-3.8.0.jar, versi boleh dipilih sendiri

  • Muat turun fail pemacu penyemak imbas (nota di sini: anda mesti memuat turun versi yang sama seperti ini Pasang fail pemacu yang sepadan dengan versi penyemak imbas pada komputer anda). Nama fail pemacu yang digunakan oleh penyemak imbas Google ialah: chromedriver, https://chromedriver.storage.googleapis.com/index.html (alamat muat turun pemandu chrome). Nama fail pemacu Firefox ialah: geckodriver.exe, https://docs.seleniumhq.org/download/ (Pergi ke tapak web rasmi selenium untuk memuat turun, pilih java)

Anda boleh melihat yang sepadan versi chrom dan chromedriver Perhatikan dalam setiap versi, nombor versi chrome boleh dilihat melalui chrome://settings/help

Nota : Muat turun selesai Fail pemacu hendaklah diletakkan dalam direktori akar php

  • Muat turun fail demo PHP selenium, https://github.com/facebook /php-webdriver (di dalam Terdapat contoh.php dan dokumen kes di bawah fail ujian untuk rujukan).
  • Selepas menulis demo, anda boleh mengujinya Mula-mula jalankan fail pakej balang selenium yang dimuat turun, masukkan direktori tempat anda meletakkan fail selenium pada baris arahan cmd dan laksanakan arahan berikut (nota: diperlukan Konfigurasikan pembolehubah persekitaran berjalan java dalam langkah kedua) java -jar selenium-server-standalone-3.8.0.jar. Jika gesaan berikut muncul pada baris arahan anda, ini bermakna permulaan berjaya.

Apabila melaksanakan example.php, Notis: Indeks tidak ditentukan: ELEMEN dalam D:testvendorfacebookwebdriverlibRemoteRemoteWebDriver.php pada baris 178,

>
java -jar selenium-server-standalone-3.8.0.jar -enablePassThrough false至此,通过编写example.php文件便可实现简单的自动登录流程。
Salin selepas log masuk
Sebelum menjalankan exam.php, anda perlu menukar ekwing kepada vendor. direktori Salin salinan ke direktori phpDirver


Anda boleh mengubah suai example.php untuk melaksanakan log masuk automatik ke tapak web lain Contoh.php adalah seperti berikut:

<?php
// An example of using php-webdriver.
// Do not forget to run composer install before. You must also have Selenium server started and listening on port 4444.namespace Facebook\WebDriver;use Facebook\WebDriver\Remote\DesiredCapabilities;use Facebook\WebDriver\Remote\RemoteWebDriver;require_once(&#39;vendor/autoload.php&#39;);// This is where Selenium server 2/3 listens by default. For Selenium 4, Chromedriver or Geckodriver, use http://localhost:4444/$host = &#39;http://localhost:4444/wd/hub&#39;;$capabilities = DesiredCapabilities::chrome();$driver = RemoteWebDriver::create($host, $capabilities);$driver->manage()->window()->maximize();// navigate to Selenium page on Wikipedia$driver->get(&#39;http://www.baidu.com/Login/s?name=lzxx&#39;);// write &#39;PHP&#39; in the search box$driver->findElement(WebDriverBy::id(&#39;name&#39;)) // find search input element->sendKeys(&#39;xxxx&#39;); // fill the search box$driver->findElement(WebDriverBy::id(&#39;xxxx&#39;))    ->sendKeys(&#39;88888888&#39;);//$driver->submit(); // submit the whole form

// wait until &#39;PHP&#39; is shown in the page heading element
//$driver->wait()->until(
//    WebDriverExpectedCondition::elementTextContains(WebDriverBy::id(&#39;firstHeading&#39;), &#39;PHP&#39;)
//);

// print title of the current page to outputecho "The title is &#39;" . $driver->getTitle() . "&#39;\n";// print URL of current page to outputecho "The current URL is &#39;" . $driver->getCurrentURL() . "&#39;\n";// find element of &#39;History&#39; item in menu
//$historyButton = $driver->findElement(
//    WebDriverBy::cssSelector(&#39;#jsLoginBtn&#39;)
//);$historyButton = $driver->findElement(
    WebDriverBy::id(&#39;jsLoginBtn&#39;)
);// read text of the element and print it to outputecho "About to click to button with text: &#39;" . $historyButton->getText() . "&#39;\n";// click the element to navigate to revision history page$historyButton->click();// wait until the target page is loaded$driver->wait()->until(
    WebDriverExpectedCondition::titleContains(&#39;教师首页&#39;)
);// print the title of the current pageecho "The title is &#39;" . $driver->getTitle() . "&#39;\n";// print the URI of the current pageecho "The current URI is &#39;" . $driver->getCurrentURL() . "&#39;\n";// delete all cookies
//$driver->manage()->deleteAllCookies();

// add new cookie$cookie = new Cookie(&#39;cookie_set_by_selenium&#39;, &#39;cookie_value&#39;);$driver->manage()->addCookie($cookie);// dump current cookies to output$cookies = $driver->manage()->getCookies();print_r($cookies);$driver->get(&#39;http://www.ekwing.com/exam/teacher/selflist&#39;);// close the browser
//$driver->quit();
Salin selepas log masuk
Luar topik: Selenium tidak menyokong rangka kerja integrasi Bahasa PHP, jadi jika kita ingin menggunakan selenium untuk menjalankan ujian berfungsi dalam projek, kita perlu menggabungkan pelbagai skrip itu sendiri, yang hampir seperti menulis rangka kerja.

Pembelajaran yang disyorkan: "

Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk menyediakan persekitaran php selenium. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan