Apple ไม่ได้ให้บริการ Safari เวอร์ชันปัจจุบันที่ได้รับการสนับสนุนอย่างเป็นทางการสำหรับ Linux Safari เวอร์ชันสุดท้ายสำหรับ Windows คือ Safari 5.1.7 ซึ่งออกมาในปี 2010 และล้าสมัยแล้ว ควรใช้ Mac เครื่องอื่นเพื่อใช้งาน Safari เวอร์ชันจริง หรือใช้ Playwright เวอร์ชัน WebKit สำหรับการทดสอบบน Linux (WebKit ไม่ใช่ Safari)
นี่เป็นเพียงแผนผัง ไม่ใช่การค้นหาแพ็กเกจแบบเรียลไทม์: Apple ไม่ได้เผยแพร่ Safari เวอร์ชัน Linux ปัจจุบัน
เลือกวิธีการที่เหมาะสมกับเป้าหมายของคุณ
เป้าหมายของคุณ ใช้ สิ่งที่คุณจะได้รับ
เปิดหรือทดสอบเว็บไซต์ใน Safari จริงๆ เซสชันเบราว์เซอร์ macOS ระยะไกล Safari ที่ทำงานบน Mac ควบคุมจากระบบ Linux
เรียกใช้การตรวจสอบเบราว์เซอร์อัตโนมัติบน Linux Playwright WebKit เป็นเบราว์เซอร์ที่สร้างด้วย WebKit ไม่ใช่ Safari ที่มีตราสินค้า
เรียกดูข้อมูลตามปกติบน Linux เบราว์เซอร์ Linux ที่รองรับ เช่น Firefox หรือ Chromium เบราว์เซอร์ที่ได้รับการดูแลรักษาอย่างดีพร้อมการอัปเดตสำหรับ Linux
สำหรับพฤติกรรมเฉพาะของ Safari, ส่วนขยาย, การรองรับสื่อ หรือเวอร์ชันที่แน่นอน ให้ทดสอบใน Safari จริงบน macOS Linux WebKit สามารถตรวจจับปัญหาของเอนจินได้ แต่ไม่สามารถรับรองเบราว์เซอร์ของ Apple ได้
ใช้เซสชัน Safari จริงจาก Linux
บริการทดสอบเบราว์เซอร์เป็นตัวเลือกที่ตรงไปตรงมาแม้ไม่มี Mac BrowserStack Live ให้บริการเซสชันเบราว์เซอร์บนคลาวด์และระบุว่า Safari เป็นหนึ่งในเบราว์เซอร์ที่รองรับ ตรวจสอบภาพรวม Live และรายการเบราว์เซอร์ปัจจุบันได้ เวอร์ชัน macOS และ Safari ที่ใช้งานได้อาจมีการเปลี่ยนแปลง
เปิดแดชบอร์ดเบราว์เซอร์ระยะไกล เข้าสู่ระบบบริการที่ให้บริการ Safari บนเดสก์ท็อปสำหรับ macOS ในตัวเลือกอุปกรณ์หรือเบราว์เซอร์ เลือกเดสก์ท็อป macOS และเวอร์ชัน Safari ที่ใช้งานได้
เริ่มเซสชันและเปิดเว็บไซต์ของคุณ ป้อนที่อยู่เว็บไซต์สาธารณะลงในหน้าต่างเบราว์เซอร์ระยะไกล เบราว์เซอร์ทำงานอยู่บนเครื่อง Mac ระยะไกล ส่วนคอมพิวเตอร์ Linux ทำหน้าที่เพียงแสดงผลและควบคุมเซสชันนั้นเท่านั้น
การเชื่อมต่อระยะไกลช่วยให้เดสก์ท็อป Linux ควบคุมเบราว์เซอร์ที่ทำงานบน macOS ได้ แผนภาพนี้ไม่ใช่ภาพหน้าจอของ BrowserStack
เข้าถึงแหล่งพัฒนาท้องถิ่น
หากเว็บไซต์ทำงานบนเครื่อง Linux ของคุณเท่านั้น เบราว์เซอร์ระยะไกลจะไม่สามารถเข้าถึง localhost ได้ด้วยตัวเอง ให้ใช้ช่องทางการทดสอบภายในเครื่องของบริการนั้น การตั้งค่าอย่างเป็นทางการของ BrowserStack รองรับไบนารีแบบบรรทัดคำสั่ง Linux สำหรับวัตถุประสงค์นี้:
ดาวน์โหลดไฟล์ไบนารี Linux ที่ตรงกับสถาปัตยกรรมระบบของคุณจากคำแนะนำการทดสอบ BrowserStack ในเครื่อง จากนั้นแตกไฟล์ ZIP ออกมา
คัดลอกรหัสการเข้าถึงของคุณจากการตั้งค่าบัญชี ในเทอร์มินัล ให้เปลี่ยนไปยังโฟลเดอร์ที่มีไฟล์ไบนารีที่แตกไฟล์แล้ว และเรียกใช้คำสั่ง:
./BrowserStackLocal --key YOUR_ACCESS_KEY
แทนที่ตัวยึดตำแหน่งด้วยคีย์ของคุณเอง และเปิดเทอร์มินัลไว้ขณะทดสอบ จากนั้นเริ่มหรือรีสตาร์ทเซสชัน Live โดยเปิดใช้งานการทดสอบในเครื่อง และป้อนที่อยู่ภายในเครื่องของคุณ เช่นhttp://localhost:3000หยุดการเชื่อมต่อด้วยคำสั่งCtrl+Cเมื่อคุณทำการทดสอบเสร็จสิ้นแล้ว โปรดดูแลคีย์การเข้าถึงนี้เหมือนรหัสผ่าน และอย่าคัดลอกไปวางในโค้ดสาธารณะหรือแบ่งปันให้ผู้อื่น
เส้นทางทดสอบภายในเครื่องจะส่งไซต์พัฒนาไปยังเบราว์เซอร์ระยะไกล นี่เป็นเพียงภาพจำลอง ไม่ใช่แดชบอร์ดบริการ
เรียกใช้งาน WebKit ในเครื่องด้วย Playwright
สำหรับการทดสอบอัตโนมัติที่ทำงานบน Linux หรือใน Linux CI นั้น Playwright สามารถติดตั้ง WebKit build ได้ บนระบบที่มี Python 3 ให้สร้างสภาพแวดล้อมเสมือน ติดตั้ง Playwright และดาวน์โหลดไฟล์ไบนารีสำหรับเบราว์เซอร์ที่ตรงกัน:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install playwright
playwright install webkit
สคริปต์ Python ขนาดเล็กก็สามารถเปิดเบราว์เซอร์และโหลดหน้าเว็บได้:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.webkit.launch()
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
browser.close()
เรียกใช้สคริปต์ด้วย Python หากเบราว์เซอร์แจ้งว่าขาดไลบรารีระบบ ให้ติดตั้งส่วนประกอบ WebKit สำหรับระบบปฏิบัติการของคุณ หรือทำตามคำแนะนำการติดตั้งเบราว์เซอร์และข้อกำหนดของระบบ ของ Playwright เรียกใช้คำสั่งติดตั้งเบราว์เซอร์อีกครั้งหลังจากอัปเดต Playwright หากมีการเปลี่ยนแปลงเวอร์ชันเบราว์เซอร์ที่ต้องการ
Playwright WebKit เป็นเบราว์เซอร์ทดสอบสำหรับ Linux ที่แยกต่างหาก ไม่ใช่หน้าต่าง Safari ที่แสดงอยู่ข้างๆ ในแผนภาพนี้
WebKit ของ Playwright เป็นเวอร์ชันที่ได้รับการแก้ไขจากซอร์สโค้ดของ WebKit ไม่ใช่เวอร์ชัน Safari ที่มีตราสินค้า และอาจมีการเปลี่ยนแปลงบางอย่างก่อน Safari พฤติกรรมบางอย่างอาจแตกต่างกันไปตามระบบปฏิบัติการ เพื่อให้ได้ผลลัพธ์ที่ใกล้เคียงกับ Safari มากขึ้น Playwright แนะนำให้ใช้งาน WebKit บน macOS โดยเฉพาะอย่างยิ่งสำหรับการเล่นวิดีโอ
เหตุใด Wine และโปรแกรมติดตั้ง Safari รุ่นเก่าจึงเป็นตัวเลือกที่ไม่ดี
วิธีการติดตั้ง Wine แบบเก่าใช้สำหรับเปิดใช้งาน Safari บน Windows ไม่ใช่เวอร์ชันปัจจุบันของ Linux Apple ระบุว่า Safari 5.1.7 ซึ่งวางจำหน่ายในปี 2010 นั้นล้าสมัยแล้ว Wine ไม่สามารถเพิ่มการแก้ไขช่องโหว่ด้านความปลอดภัยหรือฟีเจอร์ใหม่ๆ ของ Safari ได้ ควรหลีกเลี่ยงการใช้แหล่งติดตั้งที่ไม่เป็นทางการ และอย่าใช้เบราว์เซอร์นี้กับบัญชีที่มีข้อมูลสำคัญ หากต้องการเก็บรักษาไว้เพื่อการทดสอบในอดีต ควรแยกการใช้งานออกจากข้อมูลและการท่องเว็บในชีวิตประจำวัน
การแก้ไขปัญหาอย่างรวดเร็ว
เซสชันระยะไกลไม่สามารถเปิด localhost ได้: โปรดตรวจสอบว่าอุโมงค์โลคัลยังคงทำงานอยู่ เซสชัน Live ได้เปิดใช้งานการทดสอบโลคัล และเซิร์ฟเวอร์สำหรับการพัฒนาของคุณกำลังรับฟังอยู่ที่พอร์ตใน URL
Playwright WebKit จะไม่สามารถทำงานได้: ตรวจสอบว่ามีไลบรารี Linux ใดขาดหายไปหรือไม่ และปฏิบัติตามคำแนะนำเกี่ยวกับส่วนประกอบที่จำเป็นของระบบสำหรับระบบปฏิบัติการของคุณ
การทดสอบ WebKit ผ่านแล้ว แต่ Safari ยังคงแสดงผลแตกต่าง: ลองทำการทดสอบซ้ำใน Safari จริงบน macOS สภาพแวดล้อมทั้งสองอาจแตกต่างกันในส่วนของแพตช์เบราว์เซอร์และคุณสมบัติของแพลตฟอร์ม