منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : تخطى تنفيذ كود
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
كيف يتم تخطى تنفيذ هذا الكود  لو لم يجد هذا العنصر فى الصفحة 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
وأعتذر ان كانت مشاركتي بدون فائدة
الصفحات : 1 2