สร้างสภาพแววล้อมของเครื่องเพื่อทำ PHPUnit และการใช้งาน Selenium ตามที่เขียนไว้ในบทความ

Testing โปรแกรมประยุกต์บนเว็บ

บทความนี้จะแนะนำวิธีเตรียมเครื่อง
ในบทความนี้จะใช้กับการติดตั้ง webserver ด้วย

ติดตั้ง php Mysql Apache โปรแกรมจำลอง Web Server ด้วย XAMPP

นะครับ สำหรับใครติดตั้ง webserver ด้วยวิธีอื่นต้องนำไปประยุกต์ให้เข้ากับเครื่องตัวเองด้วยนะครับ ข้อดีของ XAMPP ก็คือ มันจะรวม เอา Pear เอาไว้ให้เราอยู่แล้ว ดังนั้นเราไม่ต้องเสียเวลาติดตั้ง Pear เพื่อใช้งาน Unit test

  1. อัพเกรด Pear เพื่อเอา PHPUnit เวอร์ชั่นล่าสุดมาใช้ (PHPUnit 3.5+)
    อัพเกรด pear กันหน่อยด้วยคำสั่ง
    pear channel-update pear.php.net
    pear upgrade-all
    pear channel-discover pear.phpunit.de
    pear channel-discover components.ez.no
    pear channel-discover pear.symfony-project.com
    pear install -a phpunit/PHPUnit

    สำหรับใครที่เคยติดตั้ง PHPUnit ไว้แล้วจะอัพเกรด ให้เป็นเวอร์ชั่นล่าสุดก็ใช้คำสั่ง pear channel-update pear.phpunit.de,.., และสั่ง upgrade
  2. ติดตั้ง Selenium โดยดาวน์โหลด Selenium Server เก็บไว้ใน D:\xampp\htdocs\Yii_Framework 

    สั่ง Start Selenium RC Server
    java -jar selenium-server-standalone-2.0.0.jar 
    จะได้ข้อความ 
    D:\xampp\htdocs\Yii_Framework>java -jar selenium-server.jar
    17 ก.ค. 2554 0:31:38 org.openqa.grid.selenium.GridLauncher main
    INFO: Launching a standalone server
    00:31:49.671 INFO - Java: Sun Microsystems Inc. 11.3-b02
    00:31:49.687 INFO - OS: Windows XP 5.1 x86
    00:31:49.906 INFO - v2.0.0, with Core v2.0.0. Built from revision 12
    00:31:51.328 INFO - RemoteWebDriver instances should connect to: htt
    1:4444/wd/hub
    00:31:51.328 INFO - Version Jetty/5.1.x
    00:31:51.343 INFO - Started HttpContext[/selenium-server/driver,/sel
    /driver]
    00:31:51.343 INFO - Started HttpContext[/selenium-server,/selenium-s
    00:31:51.343 INFO - Started HttpContext[/,/]
    00:31:51.500 INFO - Started org.openqa.jetty.jetty.servlet.ServletHa

    00:31:51.500 INFO - Started HttpContext[/wd,/wd]
    00:31:51.531 INFO - Started SocketListener on 0.0.0.0:4444
    00:31:51.531 INFO - Started org.openqa.jetty.jetty.Server@1608e05
     

แสดงว่่า   Selenium RC Server ทำงานได้แล้ว

ลองเขียน php เพื่อทดสอบการทำงาน ของ Selenium กัน
<?php

require_once 'PHPUnit/Extensions/SeleniumTestCase.php';

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

  function testMyTestCase()
  {
    $this->open("/");
    $this->type("q", "สอน php");
    $this->click("btnG");
    $this->waitForPageToLoad("30000");
    $this->assertTrue($this->isTextPresent("Results * for selenium rc"));
  }
}
?>

save ไฟล์ชื่อ testselenium.php
แล้วลองสั่งรันด้วย command
phpunit testselenium.php 
จะได้ผลตามภาพ
selenium PHPUnit
Option ต่างๆของ Pear PHPUnit
 

สำหรับบทนี้สอนเพื่อเรียกน้ำย่อยก่อน สามารถคลิกดูบทความต่อๆ ไปได้เลย ในเว็บมีเรื่อง Selenium อีกเยอะมาก

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
hMailServer โปรแกรม E-mail Server สำหรับ Windows สร้าง Mail Server ใช้ในองส์กร
โดย mindphp จ 08 ก.พ. 2010 9:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
6724
จ 08 ก.พ. 2010 9:57 am โดย mindphp View Topic hMailServer โปรแกรม E-mail Server สำหรับ Windows สร้าง Mail Server ใช้ในองส์กร
สอบถามหน่อยค่ะ ถ้าจะบวกผลรวมราคาที่มีสินค้ามากกว่าหนึ่งรายการทำไงหรือคะ
โดย vahaha อ 07 ก.พ. 2010 5:54 pm บอร์ด Programming - PHP
1
1240
จ 08 ก.พ. 2010 7:28 am โดย createninku View Topic สอบถามหน่อยค่ะ ถ้าจะบวกผลรวมราคาที่มีสินค้ามากกว่าหนึ่งรายการทำไงหรือคะ
ติดตั้ง Joomla 1.5 ไม่สำเร็จครับช่วยที
โดย batigole อ 07 ก.พ. 2010 12:23 pm บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
1265
อ 14 ก.พ. 2010 5:57 pm โดย mindphp View Topic ติดตั้ง Joomla 1.5 ไม่สำเร็จครับช่วยที
ช่วยด้วยค่ะ เรืองโชว์รูปภาพทำไงดีคะ fecth แล้วแบ่งเป็นคอลัมน์ไงหรอคะงงมาก
โดย vahaha อ 07 ก.พ. 2010 9:26 am บอร์ด Programming - PHP
3
1529
อ 07 ก.พ. 2010 6:00 pm โดย vahaha View Topic ช่วยด้วยค่ะ เรืองโชว์รูปภาพทำไงดีคะ fecth แล้วแบ่งเป็นคอลัมน์ไงหรอคะงงมาก
เมื่อผมแบ่ง Harddisk มาแล้วเล่นเกมไรไม่ได้เลยครับ
โดย thestar111 ส 06 ก.พ. 2010 7:16 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
2495
จ 13 มิ.ย. 2011 9:51 am โดย suukmiie View Topic เมื่อผมแบ่ง Harddisk มาแล้วเล่นเกมไรไม่ได้เลยครับ
ช่วยทีครับ ติดตั้ง Joomla VirtueMart ไม่สำเร็จครับ
โดย pochara78 ส 06 ก.พ. 2010 12:52 am บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
987
ส 06 ก.พ. 2010 2:52 pm โดย mindphp View Topic ช่วยทีครับ ติดตั้ง Joomla VirtueMart ไม่สำเร็จครับ
ขอคำแนะนำเรื่องการทำเว็บ e-mail เฉพาะในองค์กร
โดย ejoy_19 ศ 05 ก.พ. 2010 9:13 pm บอร์ด Programming - PHP
9
3111
จ 08 ก.พ. 2010 9:55 am โดย mindphp View Topic ขอคำแนะนำเรื่องการทำเว็บ e-mail เฉพาะในองค์กร
ข้อความแสดงใน textfield อยู่ตรงกลาง
โดย sakrapeeoh ศ 05 ก.พ. 2010 9:21 am บอร์ด HTML CSS
4
8546
จ 08 ก.พ. 2010 10:26 am โดย mindphp View Topic ข้อความแสดงใน textfield อยู่ตรงกลาง