كيف يتم تخطى تنفيذ هذا الكود لو لم يجد هذا العنصر فى الصفحة view_photo ؟
كود :
Dim dsd As IWebElement = fes.FindElement(By.Name("view_photo"))
dsd.SendKeys(TextBox4.Text)
يعنى لو هذا الكود معك كيف ستكتبه لو العنصر مش موجود وينتقل مباشرة للخانة
الأخرى ؟ مثلا داخل اداة CheckedListBox خمس عناصر وكل اسم من هذه العناصر
سينتقل لصفحة ويب ويضغط على زر داخل صفحة الويب وهذا الزر له اسم داخل التاج اسمه view_photo
واذا لم يجد هذا الاسم ينتقل للصفحة الأخرى مباشرة دون أن يتوقف البرنامج ؟
أتمنى يكون السؤال واضح ومفهوم لآن هذا الموضوع مغلبنى من فترة حقيقة.
إقتباس :انا كتبته هكذا لكنه ايضا يتوقف
كود :
كود :
Dim hh = fes.FindElements(By.Name("view_photo"))
For Each item In hh
If Not item.GetAttribute("value") = ("صورة") Then
Me.Text = ("غير موجود")
Else
ووضعت بعد Else الكود
اعتقد انه يمكنك وضع اداة شرط تحقق اذا تم التحقق ينفذ الكود او ينتقل للكود الذي بعده
(24-10-19, 10:01 PM)AbdoDabak كتب : [ -> ]اعتقد انه يمكنك وضع اداة شرط تحقق اذا تم التحقق ينفذ الكود او ينتقل للكود الذي بعده
ما أنا ببحث على طريقة كتابة هذا الكود كيف يتم كتابته ؟
اتمنى لو تعرف أكتبه هنا أخى لو تسمح
طيب اش هو الكود كاملا مشان احاول اساعدك
كود الدخول الى الصفحة
(24-10-19, 10:05 PM)AbdoDabak كتب : [ -> ]طيب اش هو الكود كاملا مشان احاول اساعدك
كود الدخول الى الصفحة
كود :
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Try
For r As Integer = 0 To CheckedListBox1.Items.Count - 1
If CheckedListBox1.GetItemChecked(r) = True Then
CheckedListBox1.SetSelected(r, True)
CheckedListBox1.SetItemChecked(r, False)
fes.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(100)
Dim qqq As IWebElement = fes.FindElement(By.Name("view_photo"))
Dim dsd As IWebElement = fes.FindElement(By.Name("view_photo"))
End If
Next r
Catch ex As Exception
Me.Text = ("تم الانتهاء من كل العناصر المحددة")
End Try
End Sub
لكن هنا صفحات لا يوجد به هذه التاجات فالبرنامج يتوقف ..
وهو داخل تايمر على فكرة وجربت بدون تايمر ايضا توقف
اخي ما هي IWebElement و fes
(24-10-19, 10:32 PM)AbdoDabak كتب : [ -> ]اخي ما هي IWebElement و fes
هذه برمجة خاصة بال Selenium أخى ولكن دعك منها انا فقط اريد تخطى تنفيذ كود
لو لم يجد الID أو ال NAME فى التاج
انا كتبته هكذا لكنه ايضا يتوقف
كود :
Dim hh = fes.FindElements(By.Name("view_photo"))
For Each item In hh
If Not item.GetAttribute("value") = ("صورة") Then
Me.Text = ("غير موجود")
Else
ووضعت بعد
Else الكود
اخي العناصر الموجودة في CheckedListBox1 انت تحددها ولا المستخدم يحددها
(24-10-19, 10:53 PM)AbdoDabak كتب : [ -> ]اخي العناصر الموجودة في CheckedListBox1 انت تحددها ولا المستخدم يحددها
انا بحددها اخى او المستخدم سيام والمطلوب يتم تنفيذ الكود اذا وجد الأى دى أو النيم فى صفحة الويب
واذا لم يجدها يتخطاها وينتقل للعنصر الاخر
السلام عليكم ورحمة الله وبركاته
بصراحة ليس لدي معلومات عن
Selenium فلا تؤاخذني أخي لكن اعتقد ان الشرط يتحقق من هنا
كود :
fes.FindElement(By.Name("view_photo"))
جرب وضع الدوت (.) بعد الكود وابحث عن شرط Boolean
مثال
كود :
If fes.FindElement(By.Name("view_photo")).Desplay = True Then
Dim dsd As IWebElement = fes.FindElement(By.Name("view_photo"))
dsd.SendKeys(TextBox4.Text)
End If
وأعتذر ان كانت مشاركتي بدون فائدة