ใช้พร็อกซี่ทดสอบอัตโนมัติเพื่อทดสอบเว็บไซต์และแอปจากหลายประเทศ
Socks5Proxy ขาย Private Datacenter Proxy สำหรับการทดสอบอัตโนมัติและ QA เป็นราย IP (เริ่มต้นที่ $0.4680 ต่อ IP ต่อเดือน) เพื่อให้สามารถทดสอบซ้ำในหลายประเทศด้วย IP ที่แตกต่างกันบน Selenium, Playwright, Puppeteer และเซิร์ฟเวอร์ CI
เมื่อใดที่ต้องใช้ proxy สำหรับการทดสอบ?
หากบริการเปิดในหลายประเทศ คุณต้องทดสอบส่วนที่ทำงานต่างกันในแต่ละประเทศ ฟังก์ชันที่เปลี่ยนแปลงตามตำแหน่งการเข้าถึง เช่น การเลือกภาษาอัตโนมัติ การแสดงสกุลเงินและราคา รายการวิธีการชำระเงิน ข้อจำกัดตามภูมิภาค หน้าตกลงคุกกี้ ต้องเข้าถึงด้วย IP ของประเทศนั้นจึงจะตรวจสอบได้
คุณยังต้องการพร็อกซีสำหรับกรณีที่ต้องมีการร้องขอพร้อมกันจากหลาย IP เช่น การทดสอบภาระงานหรือการทดสอบฟังก์ชันการจำกัดการเชื่อมต่อ คุณสามารถตรวจสอบว่าการจำกัดการร้องขอของบริการของคุณทำงานถูกต้องตาม IP หรือไม่ และกฎการบล็อกประเทศเฉพาะถูกนำไปใช้อย่างถูกต้องหรือไม่
ยังสามารถตรวจสอบการทำงานร่วมกับบริการภายนอก เช่น แผนที่ การชำระเงิน และสคริปต์โฆษณา ว่าดึงข้อมูลถูกต้องตามประเทศหรือไม่
proxy ประเภทใดที่เหมาะสำหรับการทดสอบ?
สำหรับการทดสอบซ้ำ เราขอแนะนำพร็อกซีข้อมูลเซ็นเตอร์แบบส่วนตัว เนื่องจาก IP จะคงที่ตลอดระยะเวลาแผน ทำให้สามารถเปรียบเทียบผลลัพธ์ระหว่างวันภายใต้เงื่อนไขเดียวกันได้ และมีแบนด์วิดท์กับการเชื่อมต่อพร้อมกันไม่จำกัด จึงสามารถรันการทดสอบเบราว์เซอร์ได้โดยไม่ต้องกังวล
หากต้องการทดสอบการทำงานที่แสดงเฉพาะผู้ใช้อินเทอร์เน็ตที่อยู่อาศัย เช่นระบบป้องกันการฉ้อโกงที่จัดการการเข้าถึงจากศูนย์ข้อมูลต่างออกไป ให้เตรียมพร็อกซี ISP ส่วนตัวพร้อม สำหรับการทดสอบโหลดที่ส่งคำขอพร้อมกันจากหลาย IP พร็อกซีศูนย์ข้อมูลแชร์จะประหยัดกว่า
| การทดสอบ | สินค้าแนะนำ | เหตุผล |
|---|---|---|
| ทดสอบหน้าจอ/ฟังก์ชันแยกประเทศ | ดาต้าเซ็นเตอร์แบบไพรเวต | ทำซ้ำเงื่อนไขเดียวกันด้วย IP คงที่ |
| ทดสอบเงื่อนไขการเข้าถึงที่อยู่อาศัย | ISP แบบไพรเวต | IP ในช่วงของบริษัทอินเทอร์เน็ต |
| ทดสอบขีดจำกัดและโหลดการร้องขอ | ดาต้าเซ็นเตอร์แบบแชร์ | IP จำนวนมากในราคาต่อหน่วยต่ำ |
| การทดสอบการถดถอยระยะยาว | ไพรเวตศูนย์ข้อมูลรายปี | คง IP เดิมเป็นเวลา 1 ปี |
วิธีการเชื่อมต่อกับเครื่องมืออัตโนมัติเบราว์เซอร์?
Playwright เป็นวิธีที่ง่ายที่สุดโดยใส่ที่อยู่เซิร์ฟเวอร์ ชื่อผู้ใช้ และรหัสผ่านในการตั้งค่า proxy เมื่อเปิดเบราว์เซอร์ Puppeteer ใช้อาร์กิวเมนต์ --proxy-server สำหรับที่อยู่ และ page.authenticate สำหรับชื่อผู้ใช้และรหัสผ่าน
การรวมกันของ Selenium และ Chrome ไม่รับรหัสผ่านพร็อกซีโดยตรง ดังนั้นการใช้การรับรอง IP จึงสะดวกกว่า การลงทะเบียน IPv4 ของเซิร์ฟเวอร์ทดสอบในแดชบอร์ดจะช่วยให้สามารถเชื่อมต่อได้โดยใช้เฉพาะ ip:port โดยไม่ต้องใช้ชื่อผู้ใช้และรหัสผ่าน รหัสจริงสำหรับแต่ละเครื่องมือถูกจัดเรียงในหน้าคู่มือ
- Playwright: proxy ด้วย server, username, password
- Puppeteer: --proxy-server + page.authenticate
- Selenium + Chrome: ใช้การรับรอง IP และใช้เฉพาะ ip:port
- หากต้องการ SOCKS5 ให้ใช้พอร์ต SOCKS5 ที่มีในแต่ละบรรทัด
ดำเนินการในเซิร์ฟเวอร์ CI อย่างไร
หาก IP ออกของเซิร์ฟเวอร์ CI คงที่ ลงทะเบียน IP นั้นใน IP authorization ไม่ต้องเก็บรหัสผ่านในที่เก็บหรือไฟล์กำหนดค่า ทำให้จัดการง่ายขึ้น หาก IP เปลี่ยนบ่อย เก็บชื่อผู้ใช้และรหัสผ่านในที่เก็บความลับและอ่านเมื่อเริ่มการทดสอบ
เมื่อเริ่มการทดสอบ ให้รับรายการล่าสุดผ่าน API และแบ่งตามประเทศ คุณไม่จำเป็นต้องเขียน IP ลงในโค้ดทดสอบ คุณสามารถรับเฉพาะส่วนที่ต้องการด้วยเงื่อนไขประเทศและโปรโตคอลใน GET /proxies
บันทึก IP และประเทศที่ใช้ในการทดสอบไว้ในผลลัพธ์ คุณจะรู้ได้ทันทีว่าความล้มเหลวเกิดขึ้นเฉพาะในบางประเทศหรือบาง IP หรือไม่
เพื่อให้ผลลัพธ์น่าเชื่อถือ ต้องปรับอะไร?
ตั้งค่าภาษาเบราว์เซอร์ เขตเวลา และขนาดหน้าจอให้ตรงกับแต่ละสถานการณ์ทดสอบ หากค่าเหล่านี้แตกต่างกันไปในแต่ละการทดสอบ ผลลัพธ์ของฟังก์ชันเดียวกันอาจไม่คงที่
สำหรับการทดสอบที่ความล่าช้าของเครือข่ายส่งผลต่อผลลัพธ์ การเลือก IP ในตำแหน่งใกล้กับเซิร์ฟเวอร์ทดสอบจะดีกว่า การบันทึกเวลา response ของ proxy และบริการของคุณแยกกัน ช่วยให้วิเคราะห์สาเหตุได้
ค่าใช้จ่าย proxy สำหรับการทดสอบเป็นเท่าไหร่?
ราคาเริ่มต้นต่อ IP ต่อเดือนสำหรับ datacenter proxy แบบ private $0.4680, ISP proxy แบบ private $0.5850 ตามสกุลเงินดอลลาร์สหรัฐ สามารถเริ่มต้นด้วยแผนเล็กๆ โดยใช้ IP ไม่กี่ตัวสำหรับแต่ละประเทศที่ทดสอบ และประหยัด 30% ด้วยการชำระเงินรายปีสำหรับการทดสอบแบบถดถอยที่ทำงานต่อเนื่อง
วิธีสร้างสถานการณ์ทดสอบแยกประเทศ?
จัดตารางผลลัพธ์ที่คาดหวังสำหรับแต่ละประเทศที่จะทดสอบเพื่อให้การทำอัตโนมัติง่ายขึ้น เช่น ระบุว่าด้วย IP สหรัฐฯควรแสดงราคาเป็นดอลลาร์และหน้าจอภาษาอังกฤษ ด้วย IP เยอรมันควรแสดงราคายูโรและหน้าจอภาษาเยอรมัน ด้วย IP ญี่ปุ่นควรแสดงราคาเยนและหน้าจอภาษาญี่ปุ่น จากนั้นให้โค้ดทดสอบเปิดหน้าเว็บด้วย proxy แต่ละประเทศและเปรียบเทียบกับตาราง
รวมรายการวิธีการชำระเงิน คำแนะนำการจัดส่ง และหน้าตกลงคุกกี้ที่แสดงหรือไม่แสดงตามประเทศไว้ในตารางเดียวกัน เมื่อเปิดตัวฟีเจอร์ใหม่ ให้รันสถานการณ์เดิมเพื่อค้นหาปัญหาที่เกิดขึ้นเฉพาะบางประเทศก่อนการเปิดตัว
หากใช้การทดสอบเปรียบเทียบหน้าจอ ควรมีหน้าจออ้างอิงแยกตามประเทศ และเปรียบเทียบเฉพาะหน้าจอที่บันทึกด้วย IP เดียวกันเพื่อลดความแตกต่างที่ไม่จำเป็น
- สร้างตารางผลลัพธ์ที่คาดหวังแยกประเทศ
- รวมองค์ประกอบตามประเทศ เช่น หน้าชำระเงิน การจัดส่ง และการยินยอม
- ทำซ้ำสถานการณ์เดียวกันทุกการกระจาย
จัดการการตั้งค่า proxy อย่างไรเมื่อใช้ร่วมกันในทีม?
อย่าเขียน IP ลงในโค้ดทดสอบ แต่ให้รับรายการตามประเทศผ่าน API เมื่อเริ่มการทดสอบ คุณไม่จำเป็นต้องแก้ไขโค้ดเมื่อเปลี่ยนแผนหรือเพิ่มประเทศ เก็บ API key ไว้ในที่เก็บความลับของ CI และตั้งค่าเป็นตัวแปรสภาพแวดล้อมบนเครื่องนักพัฒนาจะปลอดภัยกว่า
หากหลายทีมใช้บัญชีเดียวกัน แนะนำให้แบ่งแผนสำหรับแต่ละทีมเพื่อไม่ให้รายการผสมกัน หากผลการทดสอบบันทึกพร้อมแผนและประเทศ จะทราบได้ทันทีว่าเป็นการทดสอบของทีมใด
ควรทดสอบสถานะของพร็อกซี่เองก่อนการทดสอบหลัก ก่อนเริ่มทดสอบ ส่งคำของ่ายๆ ไปยังแต่ละพร็อกซี่เพื่อตรวจสอบการตอบสนอง จะช่วยแยกแยะว่าการทดสอบล้มเหลวเกิดจากปัญหาบริการหรือปัญหาการเชื่อมต่อ
สิ่งที่ควรปฏิบัติในการทดสอบคืออะไร?
โปรดทำการทดสอบภาระงานและการทดสอบการจำกัดการเชื่อมต่อกับบริการที่คุณดำเนินการหรือได้รับอนุญาตเท่านั้น การโจมตีด้วยภาระงานไปยังบริการอื่น ๆ เป็นสิ่งต้องห้ามและอาจทำให้บัญชีถูกระงับ