Opentest เป็นเครื่องมือทดสอบอัตโนมัติแบบทดสอบการทำงานฟรีและโอเพ่นซอร์สสำหรับเว็บแอปพลิเคชันแอพมือถือและ API
เรารู้ว่ามีหลายสิ่งหลายอย่างอยู่แล้วทั้งผลิตภัณฑ์เชิงพาณิชย์ที่จัดตั้งขึ้นและโครงการโอเพ่นซอร์ส เรามองหาเครื่องมือที่เหมาะสมเป็นเวลานานและพยายามอย่างยุติธรรมกับพวกเขาสองสามคนด้วยผลลัพธ์ที่ไม่ตรงตามความคาดหวังของเรา เรากำลังมองหาเครื่องมือที่เราสามารถสร้างมาตรฐานได้ซึ่งจะช่วยให้เราสามารถรวมความพยายามในการทดสอบอัตโนมัติในทีมภายในและภายนอกที่มีขนาดต่าง ๆ ชุดทักษะงบประมาณและสถานที่ทางภูมิศาสตร์ เครื่องมือนี้จะต้องรวมแนวทางปฏิบัติที่ดีที่สุดล่าสุดในอุตสาหกรรมและจะได้รับการปล่อยตัวภายใต้ใบอนุญาตโอเพ่นซอร์สเพื่อให้เราสามารถกำจัดกระบวนการที่ยาวนานและลดต้นทุน เมื่อพิจารณาถึงข้อควรพิจารณาเหล่านี้รวมถึงข้อกำหนดอื่น ๆ เราตัดสินใจว่าการสร้างจากศูนย์เป็นตัวเลือกที่รับผิดชอบ
Opentest มีจุดมุ่งหมายที่จะนำเสนอคุณสมบัติทั้งหมดของเครื่องมือการทดสอบอัตโนมัติที่ทันสมัยในขณะที่ทำตามหลักการที่ดีต่อสุขภาพ เราตั้งเป้าหมายที่จะทำให้เป็นประชาธิปไตยในการทดสอบการทำงานอัตโนมัติและสร้างชุมชนที่ยอดเยี่ยมที่มีอำนาจในการสร้างตัวเอง ในขณะที่ไม่มีสิ่งใดในชีวิตที่สมบูรณ์แบบและไม่มีซอฟต์แวร์ที่สมบูรณ์ แต่เราสัญญาว่าทุกคุณสมบัติที่เข้าสู่ผลิตภัณฑ์นี้คิดอย่างถี่ถ้วนและนำไปใช้อย่างรอบคอบเพื่อให้ได้ความสมดุลที่ดีที่สุดระหว่างพลังงานและความยืดหยุ่นในด้านหนึ่งและการใช้งานอีกด้านหนึ่ง
การทดสอบเว็บ กับซีลีเนียม รองรับเบราว์เซอร์ทั้งหมด เรียกใช้การทดสอบบนเครื่องในพื้นที่ของคุณหรือใช้ผู้ให้บริการคลาวด์
การทดสอบมือถือ สำหรับแอพ Android และ iOS ด้วย Appium เรียกใช้การทดสอบบนเครื่องในพื้นที่ของคุณหรือใช้ผู้ให้บริการคลาวด์
การทดสอบ API สร้างขึ้นที่ด้านบนของไลบรารี Apache HttpClient
การทดสอบที่ขับเคลื่อนด้วยคำหลัก รวบรวมการทดสอบของคุณโดยใช้หน่วยการสร้างระดับสูงกว่าซึ่งซ่อนความซับซ้อนของเทคโนโลยีพื้นฐานและให้คุณแสดงออกในลักษณะที่กระชับและอ่านได้
การสนับสนุนการเขียนสคริปต์ ครอบคลุมสถานการณ์การทดสอบที่ซับซ้อนโดยใช้รหัส JavaScript, ฝังตัวแบบอินทรีย์ภายในการทดสอบที่ขับเคลื่อนด้วยคำหลักของคุณเพื่อให้สิ่งต่างๆสะอาดและอ่านได้
การทดสอบแบบขนาน จำนวนเซสชันการทดสอบที่คุณสามารถเรียกใช้ในแบบคู่ขนานนั้นถูก จำกัด โดยทรัพยากรของเครื่องที่คุณใช้งานอยู่ (แต่มีเครื่องจักรในคลาวด์มากขึ้นเสมอ)
การทดสอบแบบกระจาย เขียนการทดสอบที่ดำเนินการอย่างราบรื่นในหลายเครื่องเครือข่ายและเทคโนโลยี เขียนการทดสอบการรวมที่ครอบคลุมมือถือเว็บ API และอะไรก็ตามในระหว่างนั้น
การทดสอบที่ขับเคลื่อนด้วยข้อมูล เรียกใช้การทดสอบหลายครั้งผ่านชุดข้อมูลข้อมูลที่เก็บรักษาไว้ในไฟล์ข้อมูลแยกต่างหาก
ขยายได้ รวมเข้ากับเทคโนโลยีใด ๆ โดยการสร้างการทดสอบแบบกำหนดเองของคุณเอง (คำหลัก)
แหล่งควบคุมที่เป็นมิตร กับการออกแบบ ทำงานด้วยความมั่นใจรู้ว่า Git มีหลังของคุณ สมบูรณ์แบบสำหรับทีมงานขนาดใหญ่หรือแบบกระจายทางภูมิศาสตร์
สภาพแวดล้อม สร้างการทดสอบของคุณหนึ่งครั้งและเรียกใช้กับหลาย ๆ สภาพแวดล้อมหรือใช้ชุดข้อมูลการทดสอบที่แตกต่างกัน
ทำงานได้ดีกับผู้อื่น ใช้ HTTP API อย่างง่ายเพื่อควบคุมการเริ่มต้นและการตรวจสอบเซสชันการทดสอบการรวบรวมผลการทดสอบ ฯลฯ
ข้ามแพลตฟอร์ม ทำงานบน MacOS, Windows และ Linux
(และเราต้องข้ามคุณสมบัติที่ยอดเยี่ยมมากมายเพื่อให้สั้น ๆ นี้)
สิ่งที่จำเป็นต้องมี: node.js 8 หรือมากกว่า; Java Runtime 8 ขึ้นไป
ติดตั้งจาก NPM:
npm install opentest -gการสอนวิดีโอ: https://getopentest.org/docs/installation.html (บันทึกบน Windows)
สร้างไดเรกทอรีที่ชื่อว่า "Opentest" ในโฮมไดเร็กตอรี่ของคุณเพื่อใช้เป็นสนามเด็กเล่นสำหรับคู่มือนี้และ cd ลงในไดเรกทอรีนั้น
cd ~
mkdir opentest
cd opentest บันทึก | บน Windows ให้ใช้ md แทน mkdir |
เรียกใช้คำสั่งด้านล่าง
opentest quick-startตอนนี้คุณควรมีไฟล์และไดเรกทอรีเหล่านี้ในเส้นทางปัจจุบันของคุณ:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... server และไดเรกทอรี actor1 จะถูกใช้เป็นไดเรกทอรีการทำงานสำหรับเซิร์ฟเวอร์ Opentest และนักแสดงทดสอบตามลำดับ ไดเรกทอรี test-repo เป็นที่เก็บตัวอย่างทดสอบที่แสดงให้เห็นถึงคุณสมบัติพื้นฐานบางอย่างของ Opentest
เปิดหน้าต่างเทอร์มินัลใหม่ cd ไปยังไดเรกทอรีการทำงานของเซิร์ฟเวอร์และเริ่มเซิร์ฟเวอร์ Opentest:
cd ~/opentest/server
opentest serverเซิร์ฟเวอร์ OpEntest (aka Sync Server) เป็นแอปพลิเคชัน Node.js ซึ่งฟังก์ชั่นหลักคือการดำเนินการทดสอบการดำเนินการทดสอบและเพื่อให้ UI บนเว็บ
เปิดหน้าต่างเทอร์มินัลใหม่ cd ไปยังไดเรกทอรีการทำงานของนักแสดงและเริ่มต้นนักแสดงทดสอบ:
cd ~/opentest/actor1
opentest actorนักแสดงทดสอบเป็นแอปพลิเคชัน Java ที่ทำงานบนระบบภายใต้การทดสอบและดำเนินการขั้นตอนการทดสอบตามที่ได้รับคำแนะนำจาก Sync Server
เปิดเว็บเบราว์เซอร์และนำทางไปที่ http: // localhost: 3000
จากเมนูให้เลือก เซสชัน> สร้างเซสชันจากเทมเพลต เลือก การทดสอบเริ่มต้นอย่างรวดเร็ว เทมเพลตและคลิก สร้างเซสชัน รอสองสามวินาทีและรีเฟรชเบราว์เซอร์ของคุณเพื่อดูผลลัพธ์ของเซสชันการทดสอบ
มีสามองค์ประกอบในการ opentest:
เซิร์ฟเวอร์ซิงค์ แอปพลิเคชัน Node.js ที่ทำหน้าที่ส่วนใหญ่สามฟังก์ชั่น:
การดำเนินการทดสอบการดำเนินการ
เปิดเผยเว็บ UI ที่สามารถใช้ในการสร้างเซสชันการทดสอบตรวจสอบผลการทดสอบ ฯลฯ
เปิดเผย API ที่เป็นมิตรที่สามารถใช้ประโยชน์ได้สำหรับวัตถุประสงค์เดียวกันกับ UI
นักแสดงทดสอบ แอปพลิเคชัน Java ที่รับผิดชอบในการดำเนินการทดสอบตามที่ได้รับคำสั่งจาก Sync Server อาจมีนักแสดงหลายคนที่เข้าร่วมในการทดสอบเดียวกันและนักแสดงสามารถปรับใช้กับเครื่องใด ๆ ในเครือข่ายใด ๆ รวมถึงในคลาวด์ ข้อกำหนดเพียงอย่างเดียวคือนักแสดงทดสอบสามารถสื่อสารกับ HTTP API ที่เปิดเผยโดยเซิร์ฟเวอร์ซิงค์ ไม่มีข้อกำหนดว่าเซิร์ฟเวอร์ซิงค์สามารถเริ่มต้นการสื่อสารกับนักแสดงซึ่งทำให้การตั้งค่าในสถานการณ์ง่ายขึ้นอย่างมากซึ่งนักแสดงกำลังทำงานในห้องปฏิบัติการที่อยู่เบื้องหลังไฟร์วอลล์หรือในเครือข่ายที่ไม่สามารถเข้าถึงได้จากเครื่องที่ใช้เซิร์ฟเวอร์ซิงค์
ที่เก็บทดสอบ ไดเรกทอรีที่มีโครงสร้างที่กำหนดไว้ล่วงหน้าภายใต้การควบคุมแหล่งที่มาซึ่งมีสินทรัพย์ทดสอบต่างๆ (ไฟล์ทดสอบสคริปต์เทมเพลตเซสชันทดสอบ ฯลฯ )

Opentest เป็นซอฟต์แวร์โอเพ่นซอร์สที่เปิดตัวภายใต้ใบอนุญาต MIT
หากคุณไม่ได้ระบุอย่างชัดเจนการบริจาคใด ๆ ที่ส่งโดยคุณตั้งใจจะรวมไว้ในที่เก็บนี้จะได้รับใบอนุญาตดังกล่าวข้างต้นโดยไม่มีข้อกำหนดหรือเงื่อนไขเพิ่มเติมใด ๆ
สำหรับข้อมูลเพิ่มเติมโปรดดูเอกสารแนวทางการสนับสนุน
ขอบคุณ BrowserStack สำหรับการจัดหาบัญชีโอเพนซอร์ซสำหรับการทดสอบและการพัฒนา!
แพลตฟอร์มการทดสอบข้ามเบราว์เซอร์และโอเพ่นซอร์ส❤จัดทำโดย Sauce Labs