มาเริ่มทำสิ่งที่น่าสนใจที่เราสามารถทำได้ด้วยซีลีเนียมกัน
สิ่งที่เราจะใช้สำหรับแบบฝึกหัดนี้คือเว็บไซต์ชื่อ Selenium, Etsy com โดยเฉพาะส่วนการทดสอบสแลช
เนื่องจากเว็บไซต์นี้ให้พื้นที่ทดสอบที่ดีแก่เราในการเล่นกับเว็บไซต์
ตัวอย่างเช่น หากฉันป้อนข้อมูลแบบฟอร์มที่นี่และทำการสาธิตแบบฟอร์มอย่างง่าย
ฉันสามารถใช้เว็บไซต์นี้เพื่อทดสอบการพิมพ์ข้อความในการแสดงข้อความ และดูว่าเราสามารถทำได้โดยใช้เพียงโค้ดเท่านั้น
สิ่งแรกที่ฉันจะทำคือคัดลอก URL นี้
และในกรณีของเรา เราจะเลือกรูปแบบการป้อนข้อมูลและการสาธิตแบบฟอร์มอย่างง่าย
หลังจากนั้นคุณสามารถลองทำสิ่งต่าง ๆ ได้ด้วยตัวเอง
แต่สิ่งนี้พยายามเลียนแบบฟังก์ชันส่วนใหญ่ของเว็บไซต์ เช่น อินพุตของแบบฟอร์ม ตาราง การแจ้งเตือน และโมเดล และช่วยให้คุณทดสอบโค้ดของคุณได้อย่างสวยงาม
ลองคัดลอก URL นี้ และสิ่งแรกที่ฉันจะทำคือ เราเป็นผู้ทดสอบระบบอัตโนมัติ
เรา เราไม่ได้พิมพ์สิ่งต่าง ๆ ด้วยตนเองอีกต่อไป
เราให้ซีลีเนียมทำสิ่งนั้นให้เรา
สิ่งแรกที่ฉันจะทำคือพูดว่า เฮ้ เบราว์เซอร์ Chrome ฉันต้องการให้คุณรับ URL นี้
ในกรณีของฉัน ฉันจะบอกว่า นี่คือ URL ที่ฉันเพิ่งคัดลอกและวาง
เบราว์เซอร์ Chrome เอามาให้ฉัน
ลองรันโค้ดนั้นกัน
และตรวจสอบออก
ฉันเปิดเบราว์เซอร์ด้วยซีลีเนียมและนำฉันไปยัง URL ที่ฉันระบุ
ส่วนใหญ่แล้วนี่จะเป็นบรรทัดแรกของคุณที่เราไปที่ URL เฉพาะ
ตอนนี้ฉันต้องการขยายหน้าต่างให้ใหญ่สุด
อีกครั้ง เราจะบอกว่าเบราว์เซอร์ Chrome และฉันจะบอกว่าขยายใหญ่สุด
คราวนี้จะได้หน้าต่างเต็มบาน
ตอนนี้ฉันจะปิดสิ่งนี้อีกครั้งเพราะทุกครั้งที่เราเรียกใช้รหัสนี้ หน้าต่างใหม่จะเปิดขึ้น
เลยปิดไปก่อนละกัน
สิ่งต่อไปที่ฉันต้องการทำคือตรวจสอบว่าเราอยู่ในหน้าที่ถูกต้องหรือไม่
วิธีการทำงานของ Selenium ก็คือมันจะดูที่หน้านี้และพยายามดึงองค์ประกอบหรือค้นหาองค์ประกอบในหน้านี้
และใช้ HTML ที่เพจนี้สร้างขึ้นเพื่อทำสิ่งนี้
ตอนนี้ HTML ก็คือถ้าฉันคลิกขวาที่อะไรก็ได้ในหน้าเว็บแล้วคลิกตรวจสอบ
คอนโซลนักพัฒนาซอฟต์แวร์จะแสดงขึ้น และในแท็บ Elements ตรงนี้ จะแสดงให้คุณเห็นว่าหน้าเว็บมีโครงสร้างอย่างไรโดยใช้
HTML
HTML คือสิ่งที่ช่วยให้หน้าเว็บสามารถแสดงในเบราว์เซอร์ได้ และมีข้อมูลเกี่ยวกับแต่ละองค์ประกอบ
ในกรณีของเรา ดูที่นี่ว่าบทช่วยสอนการทดสอบระบบอัตโนมัติแบบสมบูรณ์เป็นอย่างไร
HTML บอกว่า เฮ้ ฉันต้องการให้คุณเขียนข้อความนี้ตรงนี้
สมมุติว่าเราไปที่ชื่อและสโลแกนหรือเปิดสิ่งนี้
เราเห็นว่าเรามีซีลีเนียมทำได้ง่ายตรงนี้
เรามีภาพที่อยู่ตรงนี้
โดยพื้นฐานแล้ว HTML ช่วยให้เราสามารถแสดงข้อความและเนื้อหาพื้นฐานบางอย่างบนเว็บไซต์ได้
ด้วยซีลีเนียม เราสามารถจับได้
องค์ประกอบเหล่านี้และตรวจสอบและแก้ไขและทำในสิ่งที่เราต้องการ
ไปให้สุดแล้วแสดงให้คุณเห็น
หน้า HTML แต่ละหน้าจะมีแท็กชื่อเสมอ
และชื่อเป็นเพียงสิ่งที่แสดงขึ้นที่นี่ที่ด้านบน
ในกรณีของเรา มีข้อความว่า Selenium Easy Demo
สิ่งที่ฉันทำได้คือคัดลอกสิ่งนี้จริงๆ
และพูดว่า เฮ้ ในโค้ดของเราคือ string selenium easy demo
นั่นอยู่ในชื่อจุดของเบราว์เซอร์ Chrome หรือไม่
ทีนี้มาพิมพ์กันที่นี่และดูว่าเราได้อะไร
ฉันจะเรียกใช้รหัสนี้
เบราว์เซอร์เปิดขึ้น
และถ้าฉันกลับไปที่โค้ด ดูสิว่าฉันเป็นจริงเพราะข้อความนั้นอยู่ในชื่อเรื่อง
ถ้าฉันทำอะไรเช่นการสาธิต Python Easy
และฉันดำเนินการนี้
คุณจะเห็นว่าฉันจะได้รับเท็จ
ตอนนี้เป็นวิธีที่ง่ายกว่าสำหรับเราในการตรวจสอบรหัสของเราแล้ว
เพียงเรียกใช้งานพิมพ์ตลอดเวลาคือการใช้คีย์เวิร์ด assert ที่มาพร้อมกับ Python
ตอนนี้คุณจะไม่เห็นสิ่งนี้มากเกินไป เพราะสิ่งที่จะเกิดขึ้นที่นี่คือถ้าเรายืนยันบางอย่าง
หากสิ่งนี้คืนค่าเป็นเท็จ มันจะเกิดข้อผิดพลาดและออกจากรหัสจริง
ดังนั้นถ้าฉันเรียกใช้สิ่งนี้
คุณจะเห็นว่าฉันได้รับข้อผิดพลาด
ด้วยข้อผิดพลาดในการยืนยัน
นี่เป็นวิธีที่ดีสำหรับเราที่จะทดสอบว่ามีอะไรอยู่หรือไม่
แต่ให้กลับไปที่สิ่งที่เรามีก่อนหน้านี้ซึ่งเป็นการสาธิต Selenium Easy
นั่นควรให้ความจริงแก่เราและไม่ใช่ข้อผิดพลาดในรหัสของเรา
ทีนี้ อีกอย่างที่นี่คือ เราอาจมีหน้าต่างมากมายตรงนี้ เรามาปิดมันกัน
และไม่ต้องกังวล ฉันจะแสดงวิธีปิดสิ่งเหล่านี้ในภายหลังหากต้องการ
ดังนั้นฉันจึงแสดงให้คุณเห็นว่าฉันสามารถดึงชื่อเรื่องออกจากที่นี่ได้อย่างไร
อีกอย่างที่ฉันทำได้คือ เฮ้
ฉันเห็นตรงนี้ใน HTML ของฉันว่ามีแท็ก head แล้วก็มีแท็ก body ด้วย
นี่ฉันจะทำอะไรบางอย่างเช่น Hey assert
ร่างกาย.
ถ้าฉันคลิกเรียกใช้ที่นี่
อืม.
ดูเหมือนเราจะจับร่างกายไม่ได้
แล้วเรามาทำอะไรที่นี่?
อีกวิธีหนึ่งสำหรับเราในการโต้ตอบกับหน้าเว็บแบบนี้คือการใช้ตัวเลือก
ตอนนี้ ตัวเลือก ฉันจะให้ลิงก์ไปยังบางส่วนของ chichi ที่นี่ที่เราสามารถใช้ได้ แต่ตัวเลือกเป็นเพียงวิธีง่ายๆ
ที่เราจะหยิบรายการจากหน้า
เราสามารถคว้ารายการด้วย ID, ตามชื่อตามคลาส, ชื่อตามแท็ก, ชื่อโดยข้อความลิงค์
มีหลายสิ่งหลายอย่างที่เราสามารถทำได้
ตอนนี้จะแสดงให้คุณเห็นว่าจะมีลักษณะอย่างไร
ถ้าฉันไปที่หน้า HTML ตรงนี้ องค์ประกอบต่างๆ คุณจะเห็นว่าถ้าเราต้องการคว้า สมมติว่าในกรณีของเรา
เราต้องการคว้าปุ่มนี้
ฉันสามารถคลิกขวาคลิกตรวจสอบ
และดูตรงนี้ว่าผมมีปุ่มมีแบบ มีคลาส และมีข้อความแสดงข้อความ
ถ้าฉันไปที่แผ่นโกงฉันเห็นที่นี่ฉันสามารถคว้าสิ่งต่าง ๆ ได้
ตัวเลือกที่แตกต่างกัน
เราสามารถทำได้โดย CCS
เราสามารถทำได้โดยการเชื่อมโยงภาษี
เราสามารถทำได้โดยใช้ชื่อแท็ก
เราสามารถทำได้โดยใช้ชื่อคลาส
และคุณเห็นที่นี่ว่าไดรเวอร์ค้นหาองค์ประกอบตามชื่อคลาส
นี่คือวิธีที่เราสามารถเลือกได้
มาทำกัน
ฉันจะคัดลอกและวางสิ่งนี้ แล้วพูดว่า เฮ้ เบราว์เซอร์ Chrome ฉันต้องการให้คุณค้นหาองค์ประกอบตามชื่อคลาส
แล้วชั้นที่เราใช้ชื่ออะไร?
ในกรณีของเรา ชื่อคลาสคือ สมมุติว่า
ค่าเริ่มต้นของพันธบัตร
ดังนั้นฉันจะบอกว่า BTN
ค่าเริ่มต้น.
และนี่จะเป็นปุ่มของเรา
ดังนั้นหากฉันเรียกใช้สิ่งนี้และเพียงแค่พิมพ์ปุ่มแบบนี้ ถ้าฉันเรียกใช้รหัสของฉัน
คุณจะเห็นว่าฉันสามารถคว้าองค์ประกอบเว็บจากไดรเวอร์ Selenium Web ได้
และดูเหมือนว่ามันเป็นองค์ประกอบ
ฉันไม่แน่ใจจริงๆ ว่าเกิดอะไรขึ้นที่นี่ แต่เรากำลังคว้าอะไรบางอย่าง ปุ่มเดียว
ตอนนี้ องค์ประกอบของปุ่มที่เราคว้ามานั้น เหมือนกับที่เราเห็นที่นี่
ถ้าฉันตรวจสอบองค์ประกอบอีกครั้ง เราได้จับส่วนนี้ของรหัสแล้ว
ดังนั้นซีลีเนียมนี้จึงมีปุ่มนี้ให้เราใช้
และตามทางลัดที่คุณเห็นตรงนี้ มันบอกว่าเท่ากับ เท่ากับ เครื่องหมายดอลลาร์ศูนย์
สิ่งนี้ทำให้เราสามารถเลือกองค์ประกอบนี้และใช้ในสิ่งที่เราเรียกว่าคอนโซลได้
ดังนั้น ถ้าฉันเคลียร์คอนโซลและบอกว่าศูนย์ดอลลาร์ คุณจะเห็นว่านี่คือองค์ประกอบที่เราจับได้
ในนี้ มีวิธีต่างๆ ที่เราสามารถโต้ตอบกับมันได้
วิธีหนึ่งคือการพูดบางอย่างเช่น Get
คุณลักษณะ.
และแอตทริบิวต์ที่เรียกว่า HTML ภายใน
ตอนนี้ใน HTML ก็แค่หยิบสิ่งที่อยู่ระหว่าง HTML นี้ ซึ่งเป็นปุ่ม
แล้วคุณจะเห็นตรงนี้ว่าปุ่มปิดอยู่
ดังนั้นเราจึงต้องการคว้าข้อความแสดง
ถ้าฉันทำสิ่งนี้ สมมติว่าเราเรียกข้อความปุ่มนี้และเราพิมพ์ข้อความของปุ่ม
ถ้าฉันเรียกใช้สิ่งนี้
โอ้ ฉันจะได้รับข้อผิดพลาดจริงๆ เพราะคุณจะเห็นว่าฉันใช้ไวยากรณ์ผิด
ฉันพยายามพิมพ์ข้อความขนมปังแล้วได้คุณสมบัติ
ดังนั้นให้ย้ายวงเล็บแบบนี้และรันโค้ดอีกครั้ง
เราจะไปที่นั่น.
คุณเห็นที่นี่ว่าเราได้แสดงข้อความ
ดังนั้นฉันจึงสามารถตรวจสอบหน้าเว็บผ่านโค้ดได้
ค้นหาสิ่งที่ฉันต้องการควบคุมในกรณีนี้
อาจเป็นปุ่มนี้และฉันสามารถคว้าข้อความโดยใช้วิธีรับแอตทริบิวต์
ฉันจะเชื่อมโยงวิธีการเหล่านี้ทั้งหมดอีกครั้ง
สิ่งเหล่านี้เป็นสิ่งที่คุณต้องคุ้นเคยเมื่อคุณเข้าสู่ระบบอัตโนมัติ
แต่ถ้าคุณเข้าใจ HTML พื้นฐาน ก็จะเข้าใจได้ง่ายทีเดียว
มีไม่มากนัก
ฉันจะบอกว่าอาจมี 20 วิธีที่มีประโยชน์จริงๆ ที่คุณสามารถเรียนรู้และใช้งานได้
แต่คุณรู้อะไรไหม?
ตอนนี้มันไม่น่าตื่นเต้นเท่าไหร่
ฉันหมายความว่าใช่แน่นอน
เราได้เปิดเบราว์เซอร์
เราต้องดูปุ่มและแสดงข้อความที่แสดง
แต่ฉันต้องการเลียนแบบสิ่งที่เราจะทำบนเบราว์เซอร์จริงๆ
สมมติว่าเรามีอินพุตนี้
และฉันต้องการแก้ไขหน้านี้ที่ฉันป้อนข้อความบางประเภท
ฉันคลิกแสดงข้อความและเหมือนกับว่าฉันกำลังลงชื่อเข้าใช้เว็บไซต์หรืออัปโหลดบน Reddit
มาทำให้เป็นอัตโนมัติในวิดีโอหน้ากัน