คำถามและคำตอบสัมภาษณ์ QTP / UFT 100 อันดับแรกในปี 2025
แบบสอบถามนี้แบ่งออกเป็นคำถามระดับเริ่มต้นและขั้นสูง หากคุณมีประสบการณ์เกี่ยวกับ QTP ให้ข้ามไปที่คำถาม #50 แต่เราขอแนะนำให้อ่านคำถามทั้งหมด เนื่องจากจะเป็นการเตรียมคุณสำหรับการสัมภาษณ์
คำถามและคำตอบในการสัมภาษณ์ QTP/UFT สำหรับนักศึกษาใหม่
1) Repositories วัตถุประเภทใดใน Micro Focus UFT
QTP รองรับ Object Repository 2 ประเภท
1) พื้นที่เก็บข้อมูลวัตถุที่ใช้ร่วมกัน (เรียกอีกอย่างว่า Global)
2) พื้นที่เก็บข้อมูลวัตถุต่อการกระทำ (เรียกอีกอย่างว่าท้องถิ่น)
Per-Action Object Repository ถูกใช้เป็นค่าเริ่มต้น ส่วนขยายสำหรับพื้นที่เก็บข้อมูล Per-Action คือ “.mtr”
Shared Object Repository จะดีกว่าในขณะที่จัดการกับอ็อบเจ็กต์ไดนามิกซึ่งถูกเรียกในการทดสอบหลายรายการ นามสกุลคือ “.tsr”
👉 ดาวน์โหลด PDF ฟรี: คำถามและคำตอบสัมภาษณ์ QTP
2) HP QTP รองรับสภาพแวดล้อมใดบ้าง
QTP รองรับสภาพแวดล้อมต่อไปนี้
|
|
|
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Add-in และวิธีการใช้งาน โปรดดูวิดีโอนี้ เกี่ยวกับการสอน.
3) เราสามารถเรียกการทดสอบ QTP จากการทดสอบอื่นโดยใช้สคริปต์ได้หรือไม่ สมมติว่ามีการทดสอบ 4 รายการ และฉันต้องการเรียกการทดสอบเหล่านี้ในสคริปต์หลัก เป็นไปได้ใน QTP หรือไม่
ใช่. คุณสามารถเรียกสคริปต์ 4 ตัวขึ้นไปในการทดสอบของคุณ สำหรับสิ่งนี้ ขั้นแรกคุณจะต้องทำให้การดำเนินการในสคริปต์ที่เกี่ยวข้องสามารถนำมาใช้ใหม่ได้ จากนั้นจากสคริปต์ปลายทาง คุณสามารถเรียกการดำเนินการที่นำมาใช้ใหม่เหล่านี้ได้
4) Action Split คืออะไร และมีวัตถุประสงค์ของการใช้สิ่งนี้ใน QTP หรือไม่
การแบ่งการดำเนินการคือการแบ่งการดำเนินการที่มีอยู่ออกเป็นสองส่วน จุดประสงค์คือเพื่อแบ่งการดำเนินการตามฟังก์ชันการทำงานเพื่อปรับปรุงการใช้โค้ดซ้ำ
5) คุณจะรับมืออย่างไร Java ต้นไม้ใน QTP?
อันดับแรกคุณจะเลือก Java เพิ่ม – เข้าและเปิดใช้งาน QTP ขั้นตอนต่อไปบันทึกการดำเนินการบน Java ต้นไม้. หากคุณประสบปัญหาขณะบันทึก คุณสามารถเลือกเครื่องมือ > การระบุวัตถุ > Javaวัตถุแผนผังและทำการเปลี่ยนแปลงคุณสมบัติบังคับและช่วยเหลือเพื่อให้สามารถระบุตัวตนได้
เคล็ดลับ: คุณสามารถตอบตามบรรทัดที่คล้ายกันสำหรับวัตถุอื่นในสภาพแวดล้อมใดก็ได้ เช่น หากคำถามคือจะตรวจสอบอย่างไร SAP ช่องกาเครื่องหมาย คุณพูดว่า ก่อนอื่นฉันจะเลือก SAP เพิ่มเข้าไป...และอื่นๆ
6) อธิบายว่า QTP ระบุวัตถุได้อย่างไร
QTP ระบุวัตถุ GUI ใด ๆ ตามคุณสมบัติที่เกี่ยวข้อง ขณะบันทึก คิวทีพี จะระบุและจัดเก็บคุณสมบัติเฉพาะ (ตามที่กำหนดไว้ในการตั้งค่าการระบุวัตถุ) ในที่เก็บวัตถุของวัตถุ GUI ณ รันไทม์ QTP จะเปรียบเทียบค่าคุณสมบัติที่เก็บไว้กับคุณสมบัติบนหน้าจอ เพื่อระบุวัตถุ GUI โดยไม่ซ้ำกัน
เรียนรู้เพิ่มเติมเกี่ยวกับ การระบุวัตถุ
7) โหมดการบันทึกใน QTP มีกี่ประเภท? จะใช้เมื่อไร?
QTP รองรับโหมดการบันทึก 3 ประเภท
1. โหมดปกติเรียกอีกอย่างว่าตามบริบท
2. โหมดบันทึกระดับต่ำ
3. โหมดอนาล็อก
โหมดปกติ: เป็นโหมดการบันทึกเริ่มต้นและใช้ประโยชน์อย่างเต็มที่จาก Test Object Model ของ QTP จดจำวัตถุโดยไม่คำนึงถึงตำแหน่งบนหน้าจอ นี่คือโหมดการบันทึกที่ต้องการ และใช้สำหรับกิจกรรมการทำงานอัตโนมัติส่วนใหญ่
โหมดบันทึกระดับต่ำ: โหมดนี้จะบันทึกพิกัด x, y ที่แน่นอนของการทำงานของเมาส์ของคุณ มีประโยชน์ในการทดสอบแฮชแมป มีประโยชน์ในการบันทึกวัตถุที่ไม่สามารถระบุได้โดยโหมดปกติของ QTP
โหมดอะนาล็อก: โหมดนี้จะบันทึก "การเคลื่อนไหว" ของเมาส์และแป้นพิมพ์ที่คุณทำบนหน้าจอ/หน้าต่างแอปพลิเคชัน โหมดนี้มีประโยชน์ในการใช้งาน เช่น การวาดภาพ การบันทึกลายเซ็น การลากและวาง
เรียนรู้เพิ่มเติมเกี่ยวกับ โหมดการบันทึกใน QTP
8) คุณจะเรียกจากการกระทำหนึ่งไปสู่อีกการกระทำหนึ่งได้อย่างไร?
เราสามารถเรียกการกระทำได้ 2 วิธี
1) เรียกร้องให้คัดลอกการดำเนินการ – ในที่นี้ Action Object Repository , Script และ Datable จะถูกคัดลอกไปยัง Test Script ปลายทาง
2) การเรียกร้องให้ดำเนินการที่มีอยู่ – ในที่นี้ Object Repository , Script และ Datable จะไม่ถูกคัดลอก แต่จะทำการเรียก (อ้างอิง) ไปยังการดำเนินการในสคริปต์ต้นฉบับ
9) วัตถุเสมือนคืออะไร?
แอปพลิเคชันของคุณอาจมีวัตถุที่มีลักษณะเหมือนวัตถุมาตรฐานแต่ไม่ถูกจดจำโดย QTP คุณสามารถกำหนดวัตถุเหล่านี้เป็นวัตถุเสมือนและแมปวัตถุเหล่านี้กับคลาสมาตรฐาน เช่น ปุ่มหรือช่องกาเครื่องหมาย QTP จะจำลองการกระทำของผู้ใช้กับวัตถุเสมือนระหว่างเซสชันการทำงาน ในผลการทดสอบ วัตถุเสมือนจะแสดงราวกับว่าเป็นวัตถุคลาสมาตรฐาน
ตัวอย่างเช่น สมมติว่าคุณต้องการบันทึกการทดสอบบนเว็บเพจที่มีบิตแมปที่ผู้ใช้คลิก บิตแมปประกอบด้วยพื้นที่ไฮเปอร์ลิงก์ที่แตกต่างกันหลายแห่ง และแต่ละพื้นที่จะเปิดหน้าปลายทางที่แตกต่างกัน เมื่อคุณบันทึกการทดสอบ เว็บไซต์จะจับคู่พิกัดของการคลิกบนบิตแมปและเปิดเพจปลายทาง
หากต้องการเปิดใช้งาน QTP เพื่อคลิกที่พิกัดที่ต้องการระหว่างเซสชันการรัน คุณสามารถกำหนดวัตถุเสมือนสำหรับพื้นที่ของบิตแมป ซึ่งรวมถึงพิกัดเหล่านั้น และแมปกับคลาสปุ่ม เมื่อคุณรันการทดสอบ QTP คลิกบิตแมปในพื้นที่ที่กำหนดเป็นวัตถุเสมือน เพื่อให้เว็บไซต์เปิดเพจปลายทางที่ถูกต้อง
10) จะทำการทดสอบข้ามแพลตฟอร์มและทดสอบเบราว์เซอร์ข้ามโดยใช้ QTP ได้อย่างไร คุณช่วยอธิบายยกตัวอย่างได้ไหม?
คุณจะต้องสร้างการดำเนินการแยกกันซึ่งดูแลระบบปฏิบัติการและเบราว์เซอร์ที่แตกต่างกัน
การทดสอบข้ามแพลตฟอร์ม:
การใช้ตัวแปรสภาพแวดล้อมในตัวคุณสามารถขุดข้อมูลระบบปฏิบัติการได้
เช่น. แพลตฟอร์ม = สภาพแวดล้อม (“ระบบปฏิบัติการ”) จากนั้นขึ้นอยู่กับแพลตฟอร์ม คุณจะต้องเรียกการกระทำที่คุณบันทึกไว้บนแพลตฟอร์มนั้น ๆ
การทดสอบข้ามเบราว์เซอร์:
การใช้โค้ดนี้ เช่น Browser("Core Values").GetROProperty("version") คุณสามารถแยกเบราว์เซอร์และเวอร์ชันที่เกี่ยวข้องได้ เช่น Internet Explorer 6 หรือ Netscape 5 ขึ้นอยู่กับค่านี้ คุณจะเรียกใช้การดำเนินการที่เกี่ยวข้องกับเบราว์เซอร์นั้น
11) ชื่อตรรกะของวัตถุคืออะไร?
ชื่อลอจิคัลคือชื่อที่กำหนดโดย QTP ในขณะที่สร้างอ็อบเจ็กต์ในพื้นที่เก็บข้อมูลเพื่อระบุจากอ็อบเจ็กต์อื่นในแอปพลิเคชันโดยไม่ซ้ำกัน ชื่อนี้จะถูกใช้โดย QTP เพื่อแมปชื่อออบเจ็กต์ในสคริปต์พร้อมคำอธิบายที่เกี่ยวข้องในที่เก็บออบเจ็กต์ ตัวอย่าง: Browser("Browser").Page("Guru99") ที่นี่ Guru99 คือชื่อทางตรรกะของออบเจ็กต์
12) การเขียนโปรแกรมเชิงพรรณนาคืออะไร?
โดยทั่วไปแล้ว ออบเจ็กต์และคุณสมบัติจะต้องได้รับการบันทึกใน Object Repository เพื่อให้ QTP สามารถดำเนินการกับออบเจ็กต์นั้นได้
เมื่อใช้การเขียนโปรแกรมเชิงพรรณนา คุณไม่ได้จัดเก็บอ็อบเจ็กต์และค่าคุณสมบัติไว้ในที่เก็บอ็อบเจ็กต์ แต่กล่าวถึงคู่ของค่าคุณสมบัติโดยตรงในสคริปต์
แนวคิดเบื้องหลังการเขียนโปรแกรมเชิงพรรณนาไม่ได้ข้ามพื้นที่เก็บข้อมูลอ็อบเจ็กต์ แต่ช่วยจดจำอ็อบเจ็กต์ไดนามิก
เรียนรู้เพิ่มเติมเกี่ยวกับ Descriptฉันเขียนโปรแกรม
13)คุณสมบัติที่คุณจะใช้ในการระบุเบราว์เซอร์และเพจเมื่อใช้การเขียนโปรแกรมเชิงอธิบายคืออะไร?
คุณสามารถใช้คุณสมบัติชื่อ
อดีต: Browser("name:="xxx"").page("name:="xxxx"").....
OR
เรายังสามารถใช้คุณสมบัติ “micClass” ได้
อดีต: Browser("micClass:=browser").page("micClass:=page")....
14)เราสามารถบันทึกแอปพลิเคชันที่ทำงานบนเครื่องระยะไกลโดยใช้ QTP ได้หรือไม่
ได้ คุณสามารถบันทึกแอปพลิเคชันระยะไกลได้หากคุณเข้าถึงแอปพลิเคชันผ่านเบราว์เซอร์ในเครื่อง ไม่ใช่ผ่านรีโมทเช่น Citrix
หากคุณยังคงไม่สามารถบันทึกได้ แนะนำให้ติดตั้ง QTP และแอปพลิเคชันบนเครื่องเดียวกัน
15) อธิบายคีย์เวิร์ด CreateObject พร้อมตัวอย่าง
สร้างและส่งกลับการอ้างอิงไปยังออบเจ็กต์ Automation
SYNTAX: CreateObject(servername.typename [, location])
ข้อโต้แย้ง
ชื่อเซิร์ฟเวอร์: ที่จำเป็น. ชื่อของแอปพลิเคชันที่จัดเตรียมออบเจ็กต์
พิมพ์ชื่อ: ที่จำเป็น. ประเภทหรือคลาสของวัตถุที่จะสร้าง
สถานที่: ไม่จำเป็น. ชื่อของเซิร์ฟเวอร์เครือข่ายที่จะสร้างออบเจ็กต์
ตัวอย่าง: ตั้งค่า IE = CreateObject (“InternetExplorer.Application”)
16) คุณสามารถสลับระหว่าง Per-Action และ Shared Object Repository ได้หรือไม่? ถ้าใช่ทำอย่างไร?
ใช่ เราสามารถเปลี่ยนได้ ไปที่การทดสอบ -> การตั้งค่า -> ทรัพยากร ที่นี่คุณมีตัวเลือกในการเลือกที่เก็บ
17) Object Spy คืออะไร? วิธีการใช้งาน?
Object Spy ช่วยในการกำหนดคุณสมบัติของออบเจ็กต์เวลารันและทดสอบและวิธีการของแอปพลิเคชันภายใต้การทดสอบ
คุณสามารถเข้าถึงวัตถุสอดแนมได้โดยตรงจากแถบเครื่องมือหรือจากกล่องโต้ตอบที่เก็บวัตถุ Box.
มันมีประโยชน์มากในช่วง Descriptฉันเขียนโปรแกรม
เรียนรู้เพิ่มเติมเกี่ยวกับ สายลับวัตถุ
18) เมื่อตัวระบุลำดับเพียงอย่างเดียวสามารถทำให้วัตถุไม่ซ้ำกัน แล้วเหตุใดจึงไม่ให้ความสำคัญสูงสุด? เหตุใดจึงต้องบังคับเป็นอันดับแรกและให้ความช่วยเหลือครั้งต่อไป เหตุใดเราไม่สามารถไปหาตัวระบุลำดับได้โดยตรง
พิจารณาสิ่งต่อไปนี้ -
ก) หากวัตถุสองชิ้นซ้อนทับกัน การจดจำวัตถุตามตำแหน่งจะล้มเหลว
b) หากใช้การจดจำตามดัชนีเท่านั้น สคริปต์ของคุณจะทำงาน แต่เวลาดำเนินการสคริปต์จะเพิ่มขึ้น
ดังนั้นจึงมีการใช้คุณสมบัติบังคับและคุณสมบัติช่วยเหลือ
19) นามสกุลไฟล์ของไฟล์โค้ดใน QTP คืออะไร?
นามสกุลไฟล์โค้ดคือ script.mts
20) อธิบายโดยย่อเกี่ยวกับ QTP Automation Object Model
โมเดลวัตถุอัตโนมัติ QTP เกี่ยวข้องกับการทำงานอัตโนมัติของ QTP เอง การกำหนดค่าและฟังก์ชันเกือบทั้งหมดที่จัดทำโดย QTP นั้นแสดงโดยโมเดลวัตถุอัตโนมัติของ QTP กล่องโต้ตอบเกือบทั้งหมดใน QTP มีวัตถุอัตโนมัติที่สอดคล้องกันซึ่งสามารถตั้งค่าหรือเรียกค้นได้โดยใช้คุณสมบัติหรือวิธีการที่สอดคล้องกันในโมเดลวัตถุอัตโนมัติ สามารถใช้วัตถุอัตโนมัติ QTP ร่วมกับองค์ประกอบการเขียนโปรแกรม VB มาตรฐาน เช่น ลูปแบบวนซ้ำหรือคำสั่งเงื่อนไข เพื่อช่วยคุณออกแบบสคริปต์ตามต้องการ
21) ค่า Text Output ใน QTP มีประโยชน์อย่างไร?
ค่าเอาต์พุตข้อความช่วยให้คุณสามารถบันทึกข้อความที่ปรากฏบนแอปพลิเคชันภายใต้การทดสอบระหว่างรันไทม์
หากกำหนดพารามิเตอร์ ค่าเอาต์พุตข้อความจะจับค่าที่ปรากฏในการวนซ้ำแต่ละครั้งซึ่งจะถูกจัดเก็บไว้ในตารางข้อมูลรันไทม์เพื่อการวิเคราะห์เพิ่มเติม
22) ขั้นตอนคืออะไร Generator?
ขั้นตอน Generator ช่วยให้สามารถเพิ่มขั้นตอนการทดสอบลงในสคริปต์ของคุณได้ โดยใช้ตัวสร้างขั้นตอน คุณสามารถเพิ่มขั้นตอนลงในสคริปต์ได้โดยไม่ต้องบันทึกขั้นตอนจริง
23) จะทำให้ QTP เข้าใจความแตกต่างระหว่างวัตถุประเภทเดียวกันได้อย่างไร สมมติว่ามีช่องกาเครื่องหมาย 5 ช่องในหนึ่งหน้าและฉันต้องเลือกช่องที่ 2 ฉันจะทำอย่างไรผ่านสคริปต์
คุณสามารถใช้ตัวระบุลำดับเช่นดัชนีพร้อมกับการเขียนโปรแกรมเชิงอธิบายเล็กน้อยสำหรับการรู้จำวัตถุ
ดู วีดีโอ ของตัวอย่างนี้
24) รายงานการทดสอบฟิวชั่นคืออะไร?
รายงานการทดสอบฟิวชั่น แสดงทุกแง่มุมของการทดสอบและจัดอยู่ในรูปแบบต้นไม้
ให้รายละเอียดของแต่ละขั้นตอนที่ดำเนินการสำหรับการวนซ้ำทั้งหมด
นอกจากนี้ยังให้ตารางข้อมูลรันไทม์ ภาพหน้าจอ และภาพยนตร์ของการทดสอบการทำงาน หากเลือก
25) คุณจะจัดการกับข้อยกเว้นใน QTP ได้อย่างไร?
ใน QTP การจัดการที่เป็นเลิศทำได้โดยใช้
ก. สถานการณ์การกู้คืน
ข. การใช้คำสั่ง "On Error"
ในสถานการณ์การกู้คืนคุณต้องกำหนด
1. เหตุการณ์ที่ถูกกระตุ้น
2. ขั้นตอนการกู้คืน
3. ทดสอบหลังการกู้คืน-รัน
ที่ระดับสคริปต์ คุณสามารถใช้คำสั่ง On Error Resume Next และ On Error Go to 0 ได้
26) ตัวแปรสภาพแวดล้อมใน QTP มีกี่ประเภท?
ตัวแปรสภาพแวดล้อมใน QTP มีสามประเภท:
1) ในตัว (อ่านอย่างเดียว)
2) ภายในที่ผู้ใช้กำหนด (อ่านอย่างเดียว)
3) ภายนอกที่ผู้ใช้กำหนด (อ่าน/เขียน)
คุณตั้งค่าตัวแปรสภาพแวดล้อมโดยใช้รูปแบบต่อไปนี้
Environment.Value( "name") = "Guru99"
คุณสามารถดึงข้อมูลตัวแปรสภาพแวดล้อมได้โดยใช้รูปแบบต่อไปนี้
Environment.Value("name")
— สิ่งนี้จะทำการรันชื่อใหม่เป็น Guru99
Environment.Value("OS")
— สิ่งนี้จะส่งคืนระบบปฏิบัติการระบบของคุณ
27) อะไรคือความแตกต่างระหว่างจุดตรวจสอบบิตแมปและจุดตรวจสอบรูปภาพ?
จุดตรวจสอบบิตแมปทำการเปรียบเทียบพิกเซลต่อพิกเซลของรูปภาพหรือส่วนหนึ่งของรูปภาพ
จุดตรวจรูปภาพทำการเปรียบเทียบแบบพิกเซลต่อพิกเซล แต่เปรียบเทียบคุณสมบัติของรูปภาพ เช่น ข้อความแสดงแทน, URL ปลายทาง ฯลฯ แทน
28) ฟังก์ชั่นและการกระทำใน QTP แตกต่างกันอย่างไร?
การดำเนินการมีพื้นที่เก็บข้อมูลวัตถุและตารางข้อมูลของตัวเอง การดำเนินการช่วยทำให้การทดสอบเป็นแบบโมดูลาร์และเพิ่มการใช้ซ้ำ ตัวอย่าง: คุณสามารถแบ่งสคริปต์ของคุณออกเป็นการดำเนินการตามฟังก์ชันการทำงาน เช่น การเข้าสู่ระบบ ออกจากระบบ ฯลฯ
ฟังก์ชั่นเป็นแนวคิดการเขียนโปรแกรมสคริปต์ VB และไม่มีพื้นที่เก็บข้อมูลวัตถุหรือตารางข้อมูลของตัวเอง ฟังก์ชั่นช่วยในการนำโค้ดของคุณกลับมาใช้ใหม่ ตัวอย่าง: คุณสามารถสร้างฟังก์ชันในสคริปต์ของคุณเพื่อเชื่อมสองสตริงเข้าด้วยกัน
29) มุมมองคำหลักและมุมมองผู้เชี่ยวชาญใน QTP คืออะไร
มุมมองคำหลักเป็นมุมมองแบบไอคอนซึ่งแสดงขั้นตอนการทดสอบในรูปแบบตาราง นอกจากนี้ยังสร้างเอกสารประกอบสำหรับขั้นตอนการทดสอบโดยอัตโนมัติอีกด้วย
มุมมองผู้เชี่ยวชาญจะให้คำสั่งสคริปต์ VB ที่สอดคล้องกันสำหรับทุกขั้นตอนการทดสอบในมุมมองคำหลัก
30) อธิบายกระบวนการทดสอบ QTP หรือไม่
กระบวนการทดสอบ Quick Test ประกอบด้วย 6 ขั้นตอนหลัก:
1) สร้างแผนการทดสอบของคุณ – นี่คือขั้นตอนการเตรียมการที่คุณระบุขั้นตอนการทดสอบที่แน่นอน ข้อมูลการทดสอบ และผลลัพธ์ที่คาดหวังสำหรับการทดสอบอัตโนมัติของคุณ คุณยังระบุสภาพแวดล้อมและการกำหนดค่าระบบที่จำเป็นในการสร้างและรันการทดสอบ QTP ของคุณ
2) การบันทึกเซสชันในแอปพลิเคชันของคุณ – ในระหว่างระยะนี้ คุณจะดำเนินการทดสอบทีละขั้นตอนบน AUT ของคุณ และ QTP จะบันทึกคำสั่งสคริปต์ VB ที่เกี่ยวข้องโดยอัตโนมัติสำหรับแต่ละขั้นตอนที่ดำเนินการ
3) การปรับปรุงการทดสอบของคุณ – ในขั้นตอนนี้ คุณจะต้องแทรกจุดตรวจสอบ ค่าเอาต์พุต การกำหนดพารามิเตอร์ ตรรกะการเขียนโปรแกรม เช่น if…else วนซ้ำเพื่อปรับปรุงตรรกะของสคริปต์ทดสอบของคุณ
4) เล่นซ้ำและแก้ไขข้อบกพร่อง – หลังจากการปรับปรุงแล้ว คุณจะเล่นสคริปต์ซ้ำเพื่อตรวจสอบว่าสคริปต์ทำงานอย่างถูกต้องหรือไม่ และแก้ไขข้อบกพร่องหากจำเป็น
5) ดำเนินการทดสอบของคุณ – ในขั้นตอนนี้ คุณจะดำเนินการทดสอบสคริปต์ของคุณจริง
6) การวิเคราะห์ผลการทดสอบ – เมื่อการทดสอบดำเนินการเสร็จสิ้น คุณจะวิเคราะห์ผลลัพธ์ในรายงาน Test Fusion ที่สร้างขึ้น
7) การรายงานข้อบกพร่อง – จำเป็นต้องรายงานเหตุการณ์ใดๆ ที่ระบุ หากคุณใช้ศูนย์คุณภาพ ข้อบกพร่องสามารถยกขึ้นได้โดยอัตโนมัติสำหรับการทดสอบที่ล้มเหลวใน QTP
31) Test Automation Frameworks ประเภทต่างๆ มีอะไรบ้าง
ประเภทของกรอบการทำงานอัตโนมัติคือ –
1) การเขียนสคริปต์เชิงเส้น - บันทึกและเล่น
2) ห้องสมุดทดสอบ Archiกรอบงานเทคเจอร์
3) กรอบการทดสอบที่ขับเคลื่อนด้วยข้อมูล
4) กรอบการทดสอบที่ขับเคลื่อนด้วยคำหลักหรือที่ขับเคลื่อนด้วยตาราง
เรียนรู้เพิ่มเติมเกี่ยวกับ ทดสอบกรอบการทำงานอัตโนมัติ.
32) คุณจะตรวจสอบเว็บแอปพลิเคชันเพื่อหาลิงก์เสียโดยใช้ QTP ได้อย่างไร?
คุณสามารถใช้จุดตรวจสอบหน้าซึ่งจะนับจำนวนลิงก์ที่ถูกต้อง/ไม่ถูกต้องบนหน้าเว็บ
33) ตารางข้อมูลรันไทม์คืออะไร? ฉันจะค้นหาและดูตารางนี้ได้ที่ไหน
ข้อมูลเช่นเอาต์พุตแบบกำหนดพารามิเตอร์ ค่าจุดตรวจสอบ ค่าเอาต์พุตจะถูกจัดเก็บไว้ในตารางรันไทม์ เป็นไฟล์ xls ซึ่งจัดเก็บไว้ในโฟลเดอร์ผลการทดสอบ นอกจากนี้ยังสามารถเข้าถึงได้ในรายงานการทดสอบฟิวชั่นอีกด้วย
34) อะไรคือความแตกต่างระหว่างจุดตรวจสอบและค่าเอาท์พุต
จุดตรวจสอบคือจุดตรวจสอบที่เปรียบเทียบค่าปัจจุบันของทรัพย์สินที่ระบุกับค่าที่คาดหวังของทรัพย์สินนั้น โดยอิงจากการเปรียบเทียบนี้ ระบบจะสร้างสถานะเป็น "ผ่าน" หรือ "ไม่ผ่าน"
ค่าเอาท์พุตคือค่าที่บันทึกระหว่างการทดสอบการทำงานและสามารถจัดเก็บไว้ในตำแหน่งที่ระบุ เช่น Datable หรือแม้แต่ตัวแปร ต่างจากจุดตรวจสอบตรงที่ไม่มีการสร้างสถานะผ่าน/ไม่ผ่าน
35) คุณจะเชื่อมต่อกับฐานข้อมูลโดยใช้ VBScript อย่างไร?
ในการเชื่อมต่อกับฐานข้อมูลคุณต้องรู้
ก) สตริงการเชื่อมต่อของเซิร์ฟเวอร์ของคุณ
ข) ชื่อผู้ใช้
ค) รหัสผ่าน
ง) ชื่อ DNS
คุณสามารถเขียนโค้ดคำสั่งการเชื่อมต่อฐานข้อมูลได้โดยตรง หรือคุณสามารถใช้ SQL เครื่องมือสืบค้นที่จัดทำโดย QTP
36) เครื่องมือทดสอบแบทช์ QTP คืออะไร
คุณสามารถใช้เครื่องมือทดสอบแบบกลุ่มเพื่อเรียกใช้หลายสคริปต์ได้ เมื่อเพิ่มสคริปต์ลงในเครื่องมือแล้ว มันจะเปิดสคริปต์โดยอัตโนมัติและเริ่มดำเนินการทีละสคริปต์
37) QTP มีข้อเสียอย่างไร
ตั้งแต่ QTP เวอร์ชัน 10
1) การทดสอบขนาดใหญ่ใน QTP ใช้หน่วยความจำจำนวนมากและเพิ่มการใช้งาน CPU
2) เนื่องจาก QTP เก็บผลลัพธ์ไว้ในไฟล์ HTML (ไม่ใช่ txt) บางครั้งโฟลเดอร์ผลลัพธ์จึงมีขนาดใหญ่
38) ขั้นตอนที่เป็นทางเลือกคืออะไร?
ขั้นตอนที่ประกาศให้เป็นทางเลือกไม่จำเป็นต้องดำเนินการ หากมีวัตถุ GUI ที่เกี่ยวข้องอยู่ QTP จะดำเนินการกับวัตถุนั้น หากไม่มีวัตถุ GUI อยู่ QTP จะข้ามขั้นตอนทางเลือกและดำเนินการขั้นตอนถัดไป
39) Reporter.ReportEvent คืออะไร
Reporter.Reportvent เป็นวิธีมาตรฐานที่ QTP จัดทำขึ้นเพื่อส่งข้อความที่กำหนดเองไปยังหน้าต่างผลการทดสอบ
วากยสัมพันธ์
Reporter.ReportEvent EventStatus, ReportStepName, Details [, ImageFilePath] where EventStatus = 0 or micPass 1 or micFail 2 or micDone 3 or micWarning
ผลลัพธ์อาจอยู่ในสถานะใดก็ได้ เช่น ผ่าน , ไม่ผ่าน , คำเตือน ฯลฯ คุณยังสามารถส่งภาพหน้าจอไปยังหน้าต่างผลการทดสอบได้
40) คุณจะประกาศตัวแปรใน QTP อย่างไร?
คุณประกาศโดยใช้คำหลัก DIM คุณกำหนดค่าให้กับตัวแปรโดยใช้คีย์เวิร์ด SET
อดีต
Dim temp 'จะประกาศตัวแปรชั่วคราว
Set temp = 20 ' จะกำหนดค่า 20 ให้กับ temp
41) GetRoProperty คืออะไร?
GetRoProperty เป็นวิธีการมาตรฐานที่ QTP จัดทำขึ้นเพื่อดึงค่าคุณสมบัติของวัตถุรันไทม์
42) การระบุตัวตนอัจฉริยะคืออะไร?
โดยทั่วไปแล้ว หากคุณสมบัติออบเจ็กต์บนหน้าจออย่างใดอย่างหนึ่งไม่ตรงกับคุณสมบัติของออบเจ็กต์ที่บันทึกไว้ การทดสอบล้มเหลว
ในการระบุอัจฉริยะ QTP จะไม่แสดงข้อผิดพลาดหากค่าคุณสมบัติไม่ตรงกัน แต่จะใช้ตัวกรองพื้นฐานและตัวกรองเสริมเพื่อระบุวัตถุอย่างเฉพาะเจาะจง ในการระบุอัจฉริยะ หากค่าคุณสมบัติไม่ตรงกัน สคริปต์จะไม่ล้มเหลว แต่จะดำเนินการเปรียบเทียบคุณสมบัติถัดไปต่อไป การระบุอัจฉริยะสามารถเปิดใช้งานได้ในกล่องโต้ตอบการระบุวัตถุ
เรียนรู้เพิ่มเติมเกี่ยวกับ การระบุตัวตนอัจฉริยะ
43) คุณจะส่งออกสคริปต์จากพีซีเครื่องหนึ่งไปยังอีกเครื่องหนึ่งใน QTP ได้อย่างไร
เราสามารถใช้ฟังก์ชัน "สร้างสคริปต์" ที่มีอยู่ในการระบุวัตถุ การตั้งค่าการทดสอบ และแท็บเครื่องมือ/ตัวเลือก เพื่อสร้างไฟล์ zip ของสคริปต์ที่คอมพิวเตอร์ต้นทาง ไฟล์ zip เหล่านี้สามารถนำเข้าสู่ QTP ที่คอมพิวเตอร์ปลายทางได้
44) สามารถเปิดใช้ QTP สองอินสแตนซ์บนเครื่องเดียวกันได้หรือไม่
ไม่ คุณสามารถทำงานกับ QTP อินสแตนซ์เดียวบนเครื่องเดียวกันได้ แต่ QTP เองสามารถทำงานกับอินสแตนซ์หลายอินสแตนซ์ของ Application Under Test (AUT) ได้ ตัวอย่าง: QTP สามารถจัดการหน้าต่างเบราว์เซอร์ IE ได้หลายหน้าต่าง
45) กำหนดไวยากรณ์เพื่อนำเข้า / ส่งออก xls ไปยัง QTP
DataTable.ImportSheet "..\..\TestData\Input.xls",1,dtGlobalSheet
DataTable.ExportSheet "..\..\Results\Output.xls","Global"
46) SetToProperty คืออะไร?
SetToProperty เปลี่ยนคุณสมบัติของวัตถุที่เก็บไว้ในที่เก็บวัตถุ อย่างไรก็ตาม การเปลี่ยนแปลงเหล่านี้จะไม่ถาวร
47) การหน่วงเวลามาตรฐานสำหรับแอปพลิเคชันบนเว็บใน QTP คืออะไร?
ความล่าช้ามาตรฐานคือ 60 วินาที สามารถเปลี่ยนแปลงได้ในการตั้งค่าการทดสอบ
48) เครื่องมือการแปลงการกระทำคืออะไร?
เป็นเครื่องมือที่สร้างขึ้นโดย QTP เพื่อแปลงการดำเนินการเป็นส่วนประกอบกระบวนการทางธุรกิจ
49) ส่วนขยายสำหรับไลบรารีฟังก์ชันคืออะไร?
นามสกุลคือ '.QFL'
50) ถ้า Global Data sheet ไม่มีข้อมูลและ Local Datasheet มีข้อมูลสองแถว การทดสอบจะวนซ้ำกี่ครั้ง
การทดสอบจะทำซ้ำเพียงครั้งเดียว – การวนซ้ำทั่วโลก
คำถามและคำตอบสัมภาษณ์ UFT/QTP สำหรับผู้มีประสบการณ์
51) อธิบายวิธีอ่านคีย์รีจิสทรีใน UFT หรือไม่
ตัวอย่างที่แสดงไว้ที่นี่จะอธิบายวิธีการอ่านคีย์รีจิสทรีใน UFT
‘Create a shell object Set MyShell= CreateObject (“WScript.Shell”) Read the value of key from the registry RegValue =MyShell.RegRead (varpathofkey) ‘in above function we have to pass the path of key in registery’. e.g. HKCU\software\ie\settings msgbox RegValue
52) UFT สามารถรับตัวแปรสภาพแวดล้อมของระบบใน UFT ได้อย่างไร?
มีสามวิธีในการรับตัวแปรสภาพแวดล้อมระบบใน UFT
ใช้วัตถุเชลล์ WSH
- ใช้คลาส Win32_Environment ของ WMI
- อ่านตัวแปรจากรีจิสทรี
Set myShell = CreateObject (“WScript.Shell”) WScript.Echo myShell.ExpandEnvironmentStrings( "%PATHEXT%" ) myShell=Nothing,
ผลลัพธ์จะเป็น .BAT;.CMD;.VBS; วีบีอี;. จส;. เจเอสอี
ตัวแปรผู้ใช้อื่นๆ เช่น TEMP จะเขียนทับคู่ของระบบ
Set myShell = CreateObject( "WScript.Shell" ) WScript.Echo myShell.ExpandEnvironmentStrings( "TEMP=%TEMP%" ) myShell=Nothing
ผลลัพธ์ที่ได้จะเป็น
อุณหภูมิ:C:\DOCUME~1\คุณ\ท้องถิ่น~1\อุณหภูมิ
53) กล่าวถึงขั้นตอนที่จำเป็นใน UFT เพื่อส่งเมลจาก Outlook หรือไม่?
ในการส่งเมล์จาก Outlook ใน UFT
Set Outlook = CreateObject ("Outlook.Application") Dim Message 'As Outlook.MailItem Set Message = Outlook.CreateItem(olMailItem) With Message .Subject = Subject .HTMLBody = TextBody .Recipients.Add (aTo) Const olOriginator = 0 .Send End With
54) อธิบายว่าคุณสามารถดึงข้อมูลจากฐานข้อมูลใน UFT ได้อย่างไร?
หากต้องการดึงข้อมูลจากฐานข้อมูลใน UFT คุณต้องทำตามโค้ดด้านล่าง
Set db= createobject (“ADODB.Connection”) db.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\guru99\vb6\admission_project.mdb; Persist Security Info= False” Set rst=createobject(“ADODB.Recordset”) rst.Open “select*from Course”, db, 3 id=rst. RecordCount For i=0 to id-1 Print rst.field (0) & rst.fields (1) & rst.fields (2) & rst.fields (3) rst.Movenext Next
55) รหัสที่เราสามารถใช้เพื่อรับไฟล์จากเซิร์ฟเวอร์ ftp ใน UFT คืออะไร?
ในการรับไฟล์ ftp จากเซิร์ฟเวอร์ ftp คุณต้องใช้โค้ดด้านล่าง
ก) ใส่- เพื่อจัดเก็บไฟล์เดียวบนเซิร์ฟเวอร์
b) รับ- เพื่อดาวน์โหลดไฟล์เดียวจากเซิร์ฟเวอร์ ftp
c) mget- เพื่อดาวน์โหลดไฟล์หลายไฟล์จากเซิร์ฟเวอร์
d) mput- เพื่อจัดเก็บหลายไฟล์บนเซิร์ฟเวอร์
e) ลบ- หากต้องการลบไฟล์บนเซิร์ฟเวอร์ ftp
MyShell.Run "%comspec% /c FTP -n -s:" & commandstoworkwithftp & " " & Site, 0,True
56) ใน UFT คุณจะป้องกันไม่ให้ระบบล็อคได้อย่างไร?
เพื่อป้องกันไม่ให้ระบบถูกล็อค คุณสามารถใช้วิธีใดวิธีหนึ่งจากสองวิธีนี้ได้
- สร้างไฟล์ vbs อย่างง่ายโดยมีรหัสเพื่อกดปุ่ม numlock และเรียกใช้ไฟล์ vbs นั้น
- แก้ไขคีย์รีจิสทรีหนึ่งคีย์ “DisableLockWorkstation =1” เพื่อปิดใช้งานการล็อก
57) การเขียนโปรแกรมเชิงพรรณนาใน UFT หมายถึงอะไร?
Descriptการเขียนโปรแกรมเชิงบรรยายประกอบด้วยชื่อคุณสมบัติและค่าคุณสมบัติ เมื่อใดก็ตามที่ UFT ประสบปัญหาในการระบุวัตถุจากที่เก็บวัตถุ และแทนที่จะระบุวัตถุได้โดยตรงจากสคริปต์ เรียกว่าการเขียนโปรแกรมเชิงบรรยาย
58) ใน UFT อธิบายความแตกต่างระหว่างไฟล์ qfl และ vbs หรือไม่
a) qfl เป็นไฟล์ไลบรารีฟังก์ชันทดสอบด่วนในขณะที่ vbs เป็น Microsoftvbscript ของ
b) qfl เป็นไฟล์ที่ไม่สามารถเรียกใช้งานได้ในขณะที่ vbs เป็นไฟล์ที่เรียกใช้งานได้
c) หากต้องการใช้ไฟล์ในไฟล์ UFT เชื่อมโยง qfl จากการตั้งค่าการทดสอบ ในขณะที่รวมไฟล์ vbs ให้ใช้ "คำสั่งเรียกใช้ไฟล์"
59) รหัสในการเขียนข้อมูลลงไฟล์ข้อความใน UFT คืออะไร?
ในการเขียนข้อมูลลงไฟล์ข้อความในโค้ด UFT คือ
Content = “Guru99 Rocks” Set Fo = createobject ("Scripting.FilesystemObject") Set f = Fo.openTextFile ("c:\myFile.txt",8,true) ' open in write mode f.Write (contents) f.Close Set f = nothing
60) จะเขียนข้อมูลลงไฟล์ Excel ใน UFT ได้อย่างไร?
Code ที่จะเขียนข้อมูลลงไป Excel ไฟล์ในรูปแบบ UFT คือ
filepath = “C:\Bugs\Reports.xlsx” Set objExcel = CreateObject(“Excel.Application”) objExcel.Visible= True Set Wb= objExcel.Workbooks.Open (filepath) Wb.worksheets(1).Cells(1,1).Value = “guru99” read value from Excel file
61) จะสร้างไฟล์ TSR ใน UFT ได้อย่างไร?
TSR หมายถึง Test Shared Repository ซึ่งถูกสร้างขึ้นเพื่อแชร์ที่เก็บวัตถุ
หากต้องการสร้างไฟล์ TSR ให้ทำตามขั้นตอน
- เปิดที่เก็บวัตถุ
- ไปที่เมนูไฟล์
- ไปที่ตัวเลือกส่งออกวัตถุในเครื่องแล้วเลือก
หลังจากนั้น UFT จะขอให้คุณจัดเก็บไฟล์ .tsr ให้เส้นทางและบันทึก สิ่งนี้จะสร้างไฟล์ .tsr ใน UFT
62) จะเชื่อมต่อกับ QC ใน UFT ได้อย่างไร?
ในการเชื่อมต่อกับ QC นั้น UFT มีตัวเลือกในการเชื่อมต่อ QC โดยตรงจาก UFT GUI
ก) ไปที่เมนูไฟล์
b) เลือกศูนย์คุณภาพ (QC)
c) คุณจะถูกขอให้ – ป้อน URL การควบคุมคุณภาพ
d) กรอกรหัสผู้ใช้ รหัสผ่าน และโครงการ
เมื่อทำตามขั้นตอนข้างต้นแล้ว คุณจะเชื่อมต่อกับ QC ได้ และในภายหลัง คุณจะสามารถดำเนินการทดสอบจาก QC เองได้
63) Automation Framework ใน UFT มีกี่ประเภท?
เพื่อให้กระบวนการทดสอบอัตโนมัติโดยใช้ UFT ง่ายขึ้น จึงได้ออกแบบการทดสอบอัตโนมัติขึ้น UFT มีกรอบการทำงานอัตโนมัติสามประเภทหลักๆ
- กรอบการทำงานที่ขับเคลื่อนด้วยคำหลัก: ใช้เมื่อจำเป็นต้องทดสอบการทำงานหลายอย่าง
- กรอบการทำงานที่ขับเคลื่อนด้วยข้อมูล: ใช้เพื่อทดสอบโฟลว์เดียวกันกับข้อมูลการทดสอบที่แตกต่างกัน ข้อมูลการทดสอบมีความสำคัญมากกว่าฟังก์ชันการทำงานที่หลากหลายของแอปพลิเคชัน
- กรอบงานไฮบริด: เป็นการผสมผสานระหว่างกรอบการทำงานที่ขับเคลื่อนด้วยข้อมูลและคำหลัก
64) เมื่อใดที่เราควรใช้การเขียนโปรแกรมเชิงพรรณนาใน UFT
UFT สามารถระบุวัตถุได้ไม่ว่าจะผ่านทางที่เก็บวัตถุหรือการเขียนโปรแกรมคำอธิบาย Descriptการเขียนโปรแกรม ive ถูกใช้ในสถานการณ์ต่อไปนี้
ก) ใช้เพื่อลบวัตถุที่ซ้ำกัน วัตถุเดียวกันมีอยู่ในหน้าจอหรือหน้าต่างที่แตกต่างกันของแอปพลิเคชันของคุณ หากคุณใช้ OR ในกรณีนี้ คุณต้องเก็บวัตถุเดียวกันภายใต้ลำดับชั้นของวัตถุที่แตกต่างกันใน OR เพื่อจัดการกับสถานการณ์ดังกล่าว ให้อธิบาย
มีการใช้โปรแกรม
b) ไม่เหมาะสมในบางสถานการณ์ที่จะจัดเก็บอ็อบเจ็กต์ภายใน OR (Object Repository) สมมติว่าถ้าคุณต้องการพิมพ์ 100 ลิงก์บนเพจ คุณไม่ควรเก็บลิงก์ทั้งหมดไว้ใน OR คุณควรใช้แทน Description การเขียนโปรแกรมเพื่อเข้าถึงลิงค์เหล่านั้น
65) “settoproperty” คืออะไร และเมื่อใดจึงควรใช้ใน UFT?
Settoproperty ย่อมาจาก set test object property คุณสามารถใช้คุณสมบัตินี้เพื่อเปลี่ยนค่าวัตถุในขณะรันไทม์ คุณสามารถแก้ไขค่าคุณสมบัติในระหว่างรันไทม์ได้ แต่การเปลี่ยนแปลงที่เกิดขึ้นจะเกิดขึ้นชั่วคราว
66) จะสร้างอาร์เรย์ของพจนานุกรมใน UFT ได้อย่างไร?
เราสามารถสร้างอาร์เรย์ของพจนานุกรมโดยใช้ไวยากรณ์
Dim ArrayofDictionary(2) First element of array Set ArrayofDictionary(0)= createobject("scripting.dictionary") ArrayofDictionary(0).Add "key1", "temp1" ArrayofDictionary(0).Add "key2", "temp2" Added keys in first dictionary Second element of array as dictionary Set ArrayofDictionary(1)= createobject("scripting.dictionary") ArrayofDictionary(1).Add "key1", "temp1" ArrayofDictionary(1).Add "key2", "temp2" Added keys in second dictionary…..and so on
67) “อาร์เรย์” และ “พจนานุกรม” แตกต่างกันอย่างไร?
แถว | พจนานุกรม |
---|---|
อาร์เรย์แบบไดนามิกเป็นไปได้ | ไม่มีแนวคิดเกี่ยวกับพจนานุกรมแบบไดนามิก |
ต้องกำหนดขนาดของอาร์เรย์ก่อนที่จะใช้อาร์เรย์ | ไม่จำเป็นต้องตั้งค่าขนาดของพจนานุกรม |
เราต้องใช้คำสั่ง redim ก่อนที่จะเพิ่มองค์ประกอบพิเศษลงในอาร์เรย์แบบไดนามิก | หากต้องการเพิ่มองค์ประกอบพิเศษ ไม่จำเป็นต้องเขียนคำสั่งใดๆ เราแค่ใช้วิธีเพิ่ม |
ไม่มีวิธีการเฉพาะในการปลดปล่อยหน่วยความจำหากไม่จำเป็นต้องใช้องค์ประกอบเฉพาะ | องค์ประกอบที่ไม่จำเป็นอีกต่อไปสามารถลบออกจากพจนานุกรมได้ |
68) ฟังก์ชั่นกลมใน UFT คืออะไร?
ฟังก์ชัน Round ใน UFT ใช้ในการปัดเศษทศนิยม
ตัวอย่างเช่น
Mydecimal = 6.3433333 Roundedvalue= Round(Mydecimal , 3) Print roundedvalue, it will print 6.343
69) จะค้นหาจำนวนแถวทั้งหมดใน webtable ใน UFT ได้อย่างไร?
มีสามวิธีที่เราสามารถค้นหาจำนวนแถวในตารางในรูปแบบ UFT
ก) การใช้คุณสมบัติ rowcount ของวัตถุ webtable UFT
b) การใช้ GetROProperty ของ UFT
ค) การใช้ HTML DOM + UFT
70) จะสร้างไฟล์ excel ใน UFT ได้อย่างไร?
ขั้นตอนจะสร้างไฟล์ Excel ใน UFT
'Create a new Microsoft Excel object Set myExcel = createobject("excel.application") 'To make Excel visible myExcel.Application.Visible = true myExcel.Workbooks.Add MyExcel.worksheets(1).Cells(1,1). Value = “Scenario Id” MyExcel.worksheets(1).Cells(1,2).Value = “Scenario Name” MyExcel.worksheets(1).Columns(1).ColumnWidth = 10 MyExcel.worksheets(1).Columns(2).ColumnWidth = 40 MyExcel.worksheets(1).Columns(3).ColumnWidth = 20 MyExcel.worksheets(1).Columns(4).ColumnWidth = 20 MyExcel.SaveAs "c:\guru99.xlsx" MyExcel.close objExcel.Quit blnFlag = False
คำถามและคำตอบสัมภาษณ์ UFT มีประสบการณ์ 7 ถึง 10 ปี
71) อธิบายว่าเราสามารถส่งออก DataTable ไปยัง Excel ใน UFT ได้อย่างไร
ในการส่งออกตารางข้อมูลไปยัง Excel มีสองวิธี
ก) DataTable.Export (“C:\export.xls”)
b) DataTable.ExportSheet “C:\mysheet.xls” ( หากไม่มีไฟล์ Excel ไฟล์ใหม่จะถูกสร้างขึ้น)
72) ในแผ่น DataTable ใน UFT จะอ่านค่าจากเซลล์ได้อย่างไร
หากต้องการอ่านค่าจากเซลล์ ให้ทำตามขั้นตอน 2 ขั้นตอน
ก) เราตั้งค่าตัวชี้แถวในขั้นตอนแรก
b) ในขั้นตอนที่สอง เรากำหนดพารามิเตอร์/ชื่อคอลัมน์จากชีตที่จะอ่าน
ตัวอย่าง:
สำหรับตัวอย่างนี้ เราได้ตั้งค่าตัวชี้แถวเป็น 2 ในแผ่นธุรกรรม
Datatable.GetSheet(“Transactions”).SetCurrentRow(2)
ตอนนี้ เราต้องระบุว่าเราต้องการอ่านค่าจากคอลัมน์ module_name จากแผ่นธุรกรรม
Print datatable.Value (“Module_Name, “Transactions”)
73) UFT มีลูปอะไรบ้างและมีไว้ทำอะไร?
UFT มี 3 ลูปให้เลือก
a) Do…..Loop : Do Loop จะรันบล็อกคำสั่งซ้ำๆ
b) For…..Next : For Next Loop จะดำเนินการชุดคำสั่งจนกระทั่งถึงค่าตัวนับที่ระบุ
c) For……Each : เพื่อดำเนินการชุดคำสั่งสำหรับแต่ละคำสั่งสำหรับแต่ละอ็อบเจ็กต์ในคอลเลกชัน “For Each Loop” จะถูกใช้
While….Wend Loop : ในขณะที่ Wend Loop ใช้เพื่อดำเนินการชุดคำสั่งตราบใดที่เงื่อนไขที่กำหนดเป็นจริง
74) ประเภทของข้อผิดพลาดที่ต้องจัดการใน UFT มีอะไรบ้าง?
มีข้อผิดพลาดสามประเภทที่จะเผชิญใน UFT
ก) ข้อผิดพลาดทางไวยากรณ์
b) ข้อผิดพลาดเชิงตรรกะ
ค) ข้อผิดพลาดรันไทม์
75) คุณสามารถจัดการกับข้อผิดพลาดรันไทม์ได้อย่างไร?
มีหลายวิธีในการจัดการกับข้อผิดพลาดรันไทม์
ก) การใช้การตั้งค่าการทดสอบ
b) การใช้คำสั่งแสดงข้อผิดพลาด
c) การใช้วัตถุผิดพลาด
d) การใช้คำสั่ง Exit
e) สถานการณ์การกู้คืน
f) วัตถุรายงาน
76) อะไรคือความแตกต่างระหว่างการออกและการออก?
Exitaction ถูกใช้เมื่อเราต้องการออกจากการกระทำเฉพาะ ในขณะที่ exititeration ใช้เพื่อออกจากการกระทำเฉพาะซ้ำของการกระทำ
77) ใน QTP คุณจะลบช่องว่างออกจากสตริงได้อย่างไร?
คุณสามารถใช้ได้ แทนที่ฟังก์ชัน เพื่อลบช่องว่างออกจากสตริงใน QTP
Print replace(“ sdsd sd sd s “, “ “,”””)
ผลลัพธ์จะเป็น sdsdsdsds
ฟังก์ชันอิทริม สามารถใช้ได้หากจำเป็นต้องลบเฉพาะช่องว่างนำหน้าจากสตริงเท่านั้น
Print Itrim(" sdsd sd s ") à ผลลัพธ์จะเป็น "sดีดีเอสดี s "
คุณสามารถใช้ฟังก์ชัน rtrim เพื่อลบช่องว่างต่อท้ายออกจากสตริง
Print rtrim(“ sdsd sd s ” ) à เอาต์พุตจะเป็น “ sdsd sd s "
78) ใน QTP คุณจะรับอักขระตัวสุดท้ายจากสตริงได้อย่างไร?
รหัสเพื่อรับอักขระตัวสุดท้ายของสตริงใน QTP
print right( “junior,1) ‘ à Output will be “r”
79) จะเพิ่มจุดซิงโครไนซ์ใน QTP ได้อย่างไร?
มี 4 วิธีในการเพิ่มจุดซิงโครไนซ์ใน QTP
a) รอแถลงการณ์ : คำสั่งนี้จะหยุดการดำเนินการชั่วคราวเป็นเวลา x วินาทีจนกว่าวัตถุจะปรากฏขึ้น
b) รอทรัพย์สิน : วิธีนี้จะรอจนกว่าคุณสมบัติของวัตถุจะได้รับค่าเฉพาะ
c) คำสั่งที่มีอยู่ : คำสั่งนี้จะรอจนกว่าวัตถุจะพร้อมใช้งาน
d) Sync วิธี: รหัสจะรอจนกว่าหน้าเบราว์เซอร์จะโหลดเสร็จสมบูรณ์ สำหรับการทดสอบแอปพลิเคชันเว็บจะใช้วิธีนี้
80) ใน QTP อธิบายว่าวัตถุฝังศพใต้ถุนโบสถ์คืออะไร
วัตถุฝังศพใต้ถุนโบสถ์ใน QTP ใช้ในการเข้ารหัสสตริง
วากยสัมพันธ์
Crypt.Encrypt(“Guru99”)
ตัวอย่าง:
ในตัวอย่างนี้ ค่าในตัวแปร pwd จะถูกเข้ารหัสโดยใช้ Crypt วิธีการเข้ารหัส
จากนั้นค่าเข้ารหัสนี้จะถูกป้อนลงในกล่องแก้ไข
pwd= “myvalue” pwd = Crypt.Encrypt (pwd) Browser(“myb”).WinEdit (“pwd”). SetSecure pwd
81) พูดถึงความแตกต่างระหว่างไฟล์ Excecute และไลบรารี loadfunction คืออะไร?
ในไฟล์ดำเนินการ เราไม่สามารถดีบักคำสั่งได้ ด้วยไลบรารี loadfunction คำสั่งสามารถดีบักและยังสามารถโหลดไฟล์ไลบรารีหลายไฟล์ได้
82) อธิบายว่าคุณสามารถหาความยาวของอาเรย์ใน QTP ได้อย่างไร?
รหัสที่ใช้ค้นหาความยาวของอาร์เรย์ใน QTP คือ
print (ubound(arr)+1)
Ubound ส่งคืนดัชนีสุดท้ายในอาร์เรย์ ดังนั้นความยาวของอาร์เรย์จะเป็น +1 นี่จะเป็นจำนวนองค์ประกอบทั้งหมดในอาร์เรย์
83) พูดถึงโหมดการบันทึกประเภทต่าง ๆ ใน QTP มีอะไรบ้าง? จะใช้เมื่อไร?
QTP รองรับโหมดการบันทึก 3 ประเภท
ก) โหมดปกติ : เป็นโหมดการบันทึกเริ่มต้นและใช้สำหรับกิจกรรมอัตโนมัติส่วนใหญ่ ไม่ว่าวัตถุนั้นจะอยู่ที่ตำแหน่งใดบนหน้าจอก็ตาม
ข) โหมดบันทึกระดับต่ำ: มีประโยชน์ในการบันทึกวัตถุที่ไม่สามารถระบุได้ในโหมดปกติของ QTP โดยจะบันทึกพิกัด x, y ที่แน่นอนของการทำงานของเมาส์ของคุณ
c) โหมดอะนาล็อก: โหมดนี้มีประโยชน์สำหรับการใช้งาน เช่น การบันทึกลายเซ็น การวาดภาพ การลากและวาง
84) คุณสามารถเรียกจากการกระทำหนึ่งไปอีกการกระทำหนึ่งได้อย่างไร?
มีสองวิธีที่คุณสามารถเรียกจากการกระทำหนึ่งไปยังอีกการกระทำหนึ่งได้
ก) การเรียกร้องให้คัดลอกการดำเนินการ: ในที่นี้ สคริปต์และตารางข้อมูล พื้นที่เก็บข้อมูลออบเจ็กต์การดำเนินการจะถูกคัดลอกไปยังสคริปต์ทดสอบปลายทาง
b) การเรียกไปยังการดำเนินการที่มีอยู่: ในที่นี้ ตารางข้อมูลสคริปต์และพื้นที่เก็บข้อมูลออบเจ็กต์จะไม่ถูกคัดลอกแทน การอ้างอิงการโทรจะถูกสร้างให้กับการดำเนินการในสคริปต์ต้นฉบับ
85) ขั้นตอนเสริมใน QTP คืออะไร? คุณจะเพิ่มขั้นตอนเสริมใน QTP ได้อย่างไร
เมื่อทำการทดสอบ กล่องโต้ตอบจะเปิดขึ้นเพื่อทดสอบ แต่ QTP ไม่จำเป็นต้องหยุดการทดสอบ แต่จะข้ามขั้นตอนที่กำหนดเป็น "ทางเลือก" และดำเนินการทดสอบต่อไป โดยค่าเริ่มต้น QTP จะทำเครื่องหมายขั้นตอนทางเลือกโดยอัตโนมัติเพื่อเปิดกล่องโต้ตอบบางกล่อง หากต้องการกำหนดขั้นตอนทางเลือกในคีย์เวิร์ด ให้คลิกขวาและเลือก "ขั้นตอนทางเลือก" ไอคอนสำหรับขั้นตอนทางเลือกจะถูกเพิ่มในขั้นตอนถัดไป หากต้องการเพิ่มขั้นตอนทางเลือกในมุมมองผู้เชี่ยวชาญ ให้เพิ่มขั้นตอนทางเลือกที่จุดเริ่มต้นของคำสั่ง VBScript
86) จะกำหนดอาร์เรย์ใน QTP ได้อย่างไร?
อาร์เรย์สามารถกำหนดได้ 3 วิธีใน QTP
ก) อาร์เรย์ขนาดคงที่ใน QTP
Dim A (10) – มิติเดียว
Dim MyTable (5,10) – หลายมิติ
b) ขนาดอาร์เรย์แบบไดนามิกไม่ได้รับการแก้ไข
หรี่ MyArray()ReDim MyArray(25)
c) การใช้ฟังก์ชัน Array ใน QTP
A= อาร์เรย์ (10, 20,30)
B= A(2) ' B ตอนนี้คือ 30
87) คุณจะเขียนบริบทลงในไฟล์ข้อความใน QTP ได้อย่างไร?
Content = “Guru99” Set Fo = createobject(“Scripting.FilesystemObject”) Set f =Fo.openTextFile(“c:\abc.txt”, 8,true) f.Write (contents) f.Close Set f= nothing
88) เมื่อใช้คำหลัก 'ตัวเลือกที่ชัดเจน' ใน QTP เมื่อใด
เพื่อระบุว่าต้องประกาศตัวแปรทั้งหมดก่อนใช้ใน QTP จะใช้คีย์เวิร์ด 'Option Explicit'
89) ใน QTP คุณจะออกจากลูปได้อย่างไร?
คุณต้องใช้คำสั่ง "Exit For" เพื่อออกจาก "for loop" ใน QTP คำสั่ง "Exit For" จะทำให้การควบคุมออกจาก "for loop"
For count= 1 to 3 TempNum= mid(Tempstr,count,1) If isnumeric(TempNum) Then LenghtNum = LengthNum & TempNum Else Exit For End If Next GetStrLenNumber = LengthNum
90) จะหาขนาดอาร์เรย์ใน QTP ได้อย่างไร?
ขนาดของอาร์เรย์ใน QTP จะพบได้โดยใช้โค้ดต่อไปนี้
พิมพ์ (ubound(arr)+1)
Ubound ส่งคืนดัชนีสุดท้ายในอาร์เรย์ ดังนั้นขนาดของอาร์เรย์จะเป็น +1
91) ใน QTP ให้อธิบายว่าไฟล์ qrs คืออะไร
qrs แปลว่า “สถานการณ์การกู้คืนที่รวดเร็วที่สุด”- ด้วยการใช้ตัวจัดการสถานการณ์การกู้คืน เราสามารถจัดการข้อยกเว้นในการดำเนินการทดสอบได้ ใน QTP ที่ใช้ตัวจัดการสถานการณ์การกู้คืน เราสามารถจัดการข้อยกเว้นในการดำเนินการทดสอบได้ ใน QTP เมื่อคุณสร้างสถานการณ์การกู้คืน คุณต้องบันทึกไว้ในไฟล์ .qrs qrs อาจมีสถานการณ์จำนวนเท่าใดก็ได้ที่กำหนดไว้
92) อะไรคือความสำคัญของ "การกระทำ 0" ใน QTP?
“การกระทำ 0” จะถูกสร้างขึ้นตามค่าเริ่มต้นเมื่อคุณสร้างการทดสอบใหม่ใน QTP พร้อมกับการกระทำ 1 เพื่อกำหนดลำดับที่เราเรียกการกระทำอื่นๆ 1,2,3 ฯลฯ จะใช้การกระทำ 0
93) อธิบายว่าคุณสามารถแทนที่ string ใน QTP ได้อย่างไร?
เพื่อแทนที่ส่วนหนึ่งของสตริงใน QTP เราจะใช้โค้ดดังที่แสดงด้านล่าง
ตัวอย่าง,
Str = (Guru99) Suppose if you want to replace “99” with “88” then the code will print replace(str,“99”, “88”) output will be “Guru88”
94) QTP มีกรอบการทำงานอัตโนมัติอะไรบ้าง
กรอบการทำงานอัตโนมัติประเภทต่างๆ ที่มีอยู่ใน QTP ได้แก่
ก) การเขียนสคริปต์เชิงเส้น
b) ห้องสมุดทดสอบ Archiกรอบงานเทคเจอร์
c) กรอบการทดสอบที่ขับเคลื่อนด้วยข้อมูล
d) กรอบการทดสอบที่ขับเคลื่อนด้วยคำหลักหรือที่ขับเคลื่อนด้วยตาราง
e) กรอบงานการทดสอบอัตโนมัติแบบไฮบริด
95) 'Object Spy' คืออะไรและหน้าที่ของ object spy ใน QTP คืออะไร?
'Object Spy' เป็นคุณลักษณะใน QTP ซึ่งคุณสามารถดูทั้งคุณสมบัติและวิธีการของวัตถุทดสอบและรันไทม์ได้
96) “GetROProperty” คืออะไร และขั้นตอนที่เกี่ยวข้องในการใช้ GetROProperty คืออะไร?
“GetROProperty” เป็นวิธีการที่สร้างขึ้นซึ่งใช้ในการดึงค่ารันไทม์ของคุณสมบัติของวัตถุ
หากต้องการใช้ GetRoProperty จะมีสี่ขั้นตอน
ก) บันทึกออบเจ็กต์ที่คุณต้องการใช้ GetROProperty ใน Object Repository
b) ระบุคุณสมบัติรันไทม์สำหรับออบเจ็กต์ที่บันทึกไว้ซึ่งสามารถนำมาใช้ได้
c) เพื่อดึงคุณสมบัติรันไทม์ที่ระบุและเก็บค่าไว้ในตัวแปร
d) ใช้ค่านี้สำหรับการหักเงินเพิ่มเติม
97) อธิบายว่าจะหาค่าสัมบูรณ์ของตัวเลขใน QTP ได้อย่างไร
หากต้องการทราบค่าสัมบูรณ์ของตัวเลข ฟังก์ชันในตัวของ QTP จะพร้อมใช้งาน
Example- a= -1 Print abs(a) ‘output will be 1
รหัสนี้จะค้นหาค่าสัมบูรณ์ของตัวเลข
98) คุณจะตรวจสอบได้อย่างไรว่ามีพารามิเตอร์อยู่ใน Datatable หรือไม่?
เพื่อตรวจสอบว่ามีพารามิเตอร์อยู่ในตารางข้อมูลหรือไม่ เราจะใช้โค้ด
on error resume next val=DataTable(“ParamName”, dtGlobalSheet) if err.number<>0 then ‘Parameter does not exist’ else ‘Parameter exists end if
99) ใน QTP อธิบายว่ากรอบงานอัตโนมัติที่ขับเคลื่อนด้วยคำหลักคืออะไร
ในเฟรมเวิร์กการทำงานอัตโนมัติที่ขับเคลื่อนด้วยคีย์เวิร์ด การเน้นจะเน้นไปที่คีย์เวิร์ด/ฟังก์ชันเป็นหลัก ไม่ใช่ข้อมูลการทดสอบ หมายความว่าการมุ่งเน้นที่สมบูรณ์คือการสร้างฟังก์ชันที่แมปฟังก์ชันการทำงานของแอปพลิเคชัน
100) ใน QTP คุณสามารถใช้ Xpath เพื่อระบุวัตถุได้อย่างไร
Xpath สามารถใช้เพื่อระบุวัตถุบนเว็บเท่านั้น เราสามารถใช้โค้ดต่อไปนี้เพื่อระบุวัตถุได้
Set oPage=Browser(“myGoogle”).Page(“myGoogle”) oPage.WebEdit(“xpath:=//INPUT[@name=‘nameofeditbox’]”).Set “search term” ‘Enter value in google edit box
ที่นี่คุณจะได้รับโบนัส 3 คำถาม:
101) อธิบายว่าคุณสามารถลบไฟล์ excel ใน QTP ได้อย่างไร
หากต้องการลบไฟล์ Excel ใน QTP
Set fo = createobject(“Scripting.filesystemobject”) fo.deletefile(“C:\xyz.xlsx”) Set fo=nothing
102) ปัจจัยอะไรที่ส่งผลต่อจุดตรวจสอบบิตแมป?
จุดตรวจสอบบิตแมปได้รับผลกระทบจากความละเอียดหน้าจอและขนาดภาพ
103) จุดตรวจสอบการเข้าถึงคืออะไร?
World Wide Web Consortium (W3C) ได้ออกคำแนะนำและแนวปฏิบัติสำหรับเทคโนโลยีบนเว็บและระบบข้อมูลเพื่อให้ผู้พิการสามารถเข้าถึงเว็บได้ง่าย ตัวอย่างเช่น มาตรฐานกำหนดให้ต้องมี 'ข้อความแสดงแทน' สำหรับรูปภาพ ดังนั้นคนตาบอดที่เข้าถึงเว็บไซต์จะใช้ตัวแปลงข้อความเป็นคำพูดและอย่างน้อยก็เข้าใจว่ารูปภาพเกี่ยวกับอะไรหากไม่เห็น มาตรฐานทั้งหมดนี้ได้รับการตรวจสอบโดยจุดตรวจการเข้าถึง
แบบทดสอบการรับรอง QTP/UFT 1
แบบทดสอบการรับรอง QTP/UFT 2
แบบทดสอบการรับรอง QTP/UFT 3
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)