Exemple #1
0
        //Bir sitenin servis urllerini kontrol eden fonksiyon.
        public static void servisUrlleriniKontrolEt(WebSitesi ilgiliWebSitesi, string[] epostaMesaji)
        {
            if (ilgiliWebSitesi._servisUrlleri != null)
            {
                for (int i = 0; i < ilgiliWebSitesi._servisUrlleri.Length; i++)
                {
                    if (!string.IsNullOrEmpty(ilgiliWebSitesi._servisUrlleri[i]))
                    {
                        ChromeDriverSingleton.yesilYaz("-");

                        ChromeDriverSingleton.result = HttpStatusCode.NotFound;
                        SiteCevabi = UrlStatusCodeAl(ilgiliWebSitesi._servisUrlleri[i]);

                        ChromeDriverSingleton.exceptionCountServisUrlleriSifirla();


                        if (!(Convert.ToString(SiteCevabi).Equals("OK")))
                        {
                            ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi hata mesaji vermistir ve hata: " + SiteCevabi);

                            ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._servisUrlleri[i] + " web servisi hata mesaji vermistir ve hata: " + SiteCevabi + " hata kodu: 110");

                            ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi hata mesaji vermistir ve hata: " + SiteCevabi);

                            epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi HATA mesaji vermistir ve hata: " + SiteCevabi + "</font>";

                            ChromeDriverSingleton.ePostaSayisi++;
                        }
                        else
                        {
                            ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi basarili calismaktadir..");

                            // ChromeDriverSingleton.yesilYaz(ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi basarili calismaktadir..");


                            //Web sitesinin başarılı olduğu mail'e eklenmek istenirse bu yorum satırları silinebilir.
                            //  epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='green'>" + ilgiliWebSitesi._siteAdi + " sitesine ait " + ilgiliWebSitesi._servisUrlleri[i] + " web servisi basarili calismaktadir..</font>";

                            //  ChromeDriverSingleton.ePostaSayisi++;
                        }
                    }
                    else
                    {
                        break;
                    }
                }
            }
        }
Exemple #2
0
        //İlgili url'in status kodunu alan fonksiyon.
        public static HttpStatusCode UrlStatusCodeAl(string url)
        {
            try
            {
                var request = HttpWebRequest.Create(url);
                request.Method = "GET";

                using (var response = request.GetResponse() as HttpWebResponse)
                {
                    if (response != null)
                    {
                        ChromeDriverSingleton.result = response.StatusCode;
                        response.Close();
                    }
                }
            }
            catch (WebException ex)
            {
                if (ChromeDriverSingleton.exceptionCountServisUrlleri < 3)
                {
                    ChromeDriverSingleton.kirmiziYaz("Exception. Bir sonraki deneme için 30 saniye bekliyor..");
                    ChromeDriverSingleton.yesilYaz(url + "  Http status exceptiona düştü. Deneme sayisi: " + (ChromeDriverSingleton.exceptionCountServisUrlleri + 1));
                    System.Threading.Thread.Sleep(30000);



                    ChromeDriverSingleton.exceptionCountServisUrlleri++;

                    ChromeDriverSingleton.result = UrlStatusCodeAl(url);
                }
                else
                {
                    ChromeDriverSingleton.kirmiziYaz("Web servisi 3 denemenin ardından cevap vermedi.. : " + ChromeDriverSingleton.exceptionCountServisUrlleri);
                    ChromeDriverSingleton.exceptionCountServisUrlleriSifirla();



                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, url + " url degerine sahip site su hata mesajını vermiştir: " + ex.ToString());

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, url + " url degerine sahip site su hata mesajını vermiştir: " + ex.ToString());
                }
            }

            return(ChromeDriverSingleton.result);
        }
Exemple #3
0
        //Bir web sitesine kullanıcı girişi yapmaya yarayan fonksiyon.
        public static bool KullaniciGirisiYap(IWebDriver driver, string KullaniciAdi, string Sifre, WebSitesi ilgiliWebSitesi, string[] epostaMesaji)
        {
            //Flash animasyonu olan sitelerde bekleme yapmazsak kullanıcı adı ve sifre bolumlerini bulamamaktadır..
            System.Threading.Thread.Sleep(1000);

            //string[] errorEtiketim = null;

            try
            {
                if (ilgiliWebSitesi._girisEkraniElementiNameMi)
                {
                    driver.FindElement(By.Name(ilgiliWebSitesi._kullaniciAdiEtiketi)).Clear();
                    driver.FindElement(By.Name(ilgiliWebSitesi._kullaniciAdiEtiketi)).SendKeys(KullaniciAdi);
                    driver.FindElement(By.Name(ilgiliWebSitesi._sifreEtiketi)).Clear();
                    driver.FindElement(By.Name(ilgiliWebSitesi._sifreEtiketi)).SendKeys(Sifre + Keys.Enter);
                }
                else
                {
                    driver.FindElement(By.Id(ilgiliWebSitesi._kullaniciAdiEtiketi)).Clear();
                    driver.FindElement(By.Id(ilgiliWebSitesi._kullaniciAdiEtiketi)).SendKeys(KullaniciAdi);
                    driver.FindElement(By.Id(ilgiliWebSitesi._sifreEtiketi)).Clear();
                    driver.FindElement(By.Id(ilgiliWebSitesi._sifreEtiketi)).SendKeys(Sifre + Keys.Enter);
                }


                SiteCevabi = UrlStatusCodeAl(Convert.ToString(driver.Url));

                ChromeDriverSingleton.exceptionCountServisUrlleriSifirla();

                if (!(Convert.ToString(SiteCevabi).Equals("OK")))
                {
                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server  response statu code olarak hata mesaji vermistir..");

                    ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait server hata mesaji vermistir..");

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server response statu code olarak hata mesaji vermistir ve sunucunun döndürdüğü cevap: " + SiteCevabi + " hata kodu: 101");

                    epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait server  response statu code olarak HATA mesaji vermistir ve sunucunun döndürdüğü cevap: " + SiteCevabi + "</font>";

                    ChromeDriverSingleton.ePostaSayisi++;

                    ChromeDriverSingleton.siteCevabiOlumluMu = false;

                    return(false);
                }
            }
            catch (Exception ex)
            {
                if (InternetBaglantisiVarMi())
                {
                    if (ex is TimeoutException)
                    {
                        ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi yapılırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde kullanıcı adı ve sifre etiketini yükleyemedi..  Hata:" + ex.ToString());

                        ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi yapılırken" + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde kullanıcı adı ve sifre etiketini yükleyemedi.. Hata:" + ex.ToString());

                        ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi ypaılırken " + ChromeDriverSingleton.timeoutDegeri + " saniye kullanıcı adı ve sifre etiketini yükleyemedi..");

                        epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi yapılırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde Etiketleri yükleyemedi..</font>";

                        ChromeDriverSingleton.ePostaSayisi++;

                        ChromeDriverSingleton.siteCevabiOlumluMu = false;

                        return(false);
                    }

                    if (ex is WebDriverTimeoutException)
                    {
                        ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi yapılırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi.. Hata:" + ex.ToString());

                        ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server giriş işlemi yapılırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi hata kodu: 102 Hata:" + ex.ToString());

                        ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi..");

                        epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye icerisinde CEVAP VERMEDİ..</font>";

                        ChromeDriverSingleton.ePostaSayisi++;

                        ChromeDriverSingleton.siteCevabiOlumluMu = false;

                        return(false);
                    }

                    else
                    {
                        if (ChromeDriverSingleton.exceptionCountWebSiteleri < 3)
                        {
                            ChromeDriverSingleton.yesilYaz(ilgiliWebSitesi._url + " sitesi exceptiona düştü,giriş deneme sayisi: " + ChromeDriverSingleton.exceptionCountWebSiteleri);

                            ChromeDriverSingleton.exceptionCountWebSiteleri++;
                            ChromeDriverSingleton.kirmiziYaz("Exception. Bir sonraki deneme için 30 saniye bekliyor..");
                            System.Threading.Thread.Sleep(30000);

                            //ChromeDriverSingleton.driver.Quit();
                            //ChromeDriverSingleton.driver = new ChromeDriver();


                            ChromeDriverSingleton.yeniKopyaYarat();



                            ChromeDriverSingleton.getDriverInstance().Url = ilgiliWebSitesi._url;

                            ChromeDriverSingleton.siteCevabiOlumluMu = KullaniciGirisiYap(ChromeDriverSingleton.driver, KullaniciAdi, Sifre, ilgiliWebSitesi, epostaMesaji);

                            if (ChromeDriverSingleton.siteCevabiOlumluMu)
                            {
                                return(true);
                            }
                            else
                            {
                                return(false);
                            }
                        }
                        else
                        {
                            ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait Server'a ulasilamadi.." + "Deneme sayisi: " + ChromeDriverSingleton.exceptionCountWebSiteleri + " Hata:" + ex.ToString());

                            ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait Server'a ulasilamadi hata kodu: 104 " + "Deneme sayisi: " + ChromeDriverSingleton.exceptionCountWebSiteleri + " Hata:" + ex.ToString());

                            ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait Server'a ulasilamadi.." + " Deneme sayisi: " + ChromeDriverSingleton.exceptionCountWebSiteleri);

                            epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait SERVER'A ULAŞILAMADI..</font>";

                            ChromeDriverSingleton.ePostaSayisi++;

                            ChromeDriverSingleton.siteCevabiOlumluMu = false;

                            return(false);
                        }
                    }
                }
                else
                {
                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine girerken internet baglantısı bulunamadi, Lutfen baglantınızı kontrol edin.. Hata: " + ex.ToString());

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine girerken internet baglantısı bulunamadi hata kodu: 105 Hata:" + ex.ToString());

                    ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sitesine girerken internet baglantısı bulunamadi, Lutfen baglantınızı kontrol edin..");

                    epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sitesine girerken INTERNET BAGLANTISI BULUNAMADI, Lutfen baglantınızı kontrol edin..</font>";

                    ChromeDriverSingleton.ePostaSayisi++;

                    ChromeDriverSingleton.siteCevabiOlumluMu = false;

                    return(false);
                }
            }
            System.Threading.Thread.Sleep(5000);
            try
            {
                driver.FindElement(By.Id(ilgiliWebSitesi._loginOlduktanSonraBakilacakElement));

                ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine giris basarili bir sekilde yapildi..");

                //ChromeDriverSingleton.yesilYaz(ilgiliWebSitesi._siteAdi + " sitesine giris basarili bir sekilde yapildi..");

                //Web sitesinin başarılı olduğu mail'e eklenmek istenirse bu yorum satırları silinebilir.
                // epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='green'>" + ilgiliWebSitesi._siteAdi + " sitesine giris basarili bir sekilde yapildi..</font>";

                // ChromeDriverSingleton.ePostaSayisi++;

                ChromeDriverSingleton.siteCevabiOlumluMu = true;
                return(true);
            }

            catch (Exception ex)
            {
                if (ex is TimeoutException)
                {
                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server login olduktan sonra anasayfa elementi aranırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi..  Hata:" + ex.ToString());

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server login olduktan sonra anasayfa elementi aranırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi.. Hata:" + ex.ToString());

                    ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait server login olduktan sonra anasayfa elementi aranırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi..");

                    epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait server login olduktan sonra anasayfa elementi aranırken " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi...</font>";

                    ChromeDriverSingleton.ePostaSayisi++;

                    ChromeDriverSingleton.siteCevabiOlumluMu = false;

                    return(false);
                }

                if (ex is WebDriverTimeoutException)
                {
                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi..  Hata:" + ex.ToString());

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi hata kodu: 106 Hata:" + ex.ToString());

                    ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde cevap vermedi..");

                    epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sunucusuna ait server " + ChromeDriverSingleton.timeoutDegeri + " saniye içerisinde CEVAP VERMEDİ..</font>";

                    ChromeDriverSingleton.ePostaSayisi++;

                    ChromeDriverSingleton.siteCevabiOlumluMu = false;

                    return(false);
                }

                if (ChromeDriverSingleton.exceptionLoginSonrasiKontrolCount < 3)
                {
                    ChromeDriverSingleton.yesilYaz(ilgiliWebSitesi._url + " sitesi exceptiona düştü,giriş deneme sayisi: " + ChromeDriverSingleton.exceptionLoginSonrasiKontrolCount);

                    ChromeDriverSingleton.exceptionLoginSonrasiKontrolCount++;
                    ChromeDriverSingleton.kirmiziYaz("Exception. Bir sonraki deneme için 30 saniye bekliyor..");
                    System.Threading.Thread.Sleep(30000);
                    ChromeDriverSingleton.driver.Quit();

                    ChromeDriverSingleton.driver = new ChromeDriver();

                    ChromeDriverSingleton.yeniKopyaYarat();

                    ChromeDriverSingleton.getDriverInstance().Url = ilgiliWebSitesi._url;

                    ChromeDriverSingleton.siteCevabiOlumluMu = KullaniciGirisiYap(ChromeDriverSingleton.driver, KullaniciAdi, Sifre, ilgiliWebSitesi, epostaMesaji);

                    if (ChromeDriverSingleton.siteCevabiOlumluMu)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.logDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine ait server hata mesaji vermistir.. Hata:" + ex.ToString());

                    ChromeDriverSingleton.dosyayaCumleYaz(ChromeDriverSingleton.hataDosyasiPath, ilgiliWebSitesi._siteAdi + " sitesine ait server hata mesaji vermistir hata kodu: 107 Hata:" + ex.ToString());

                    ChromeDriverSingleton.kirmiziYaz(ilgiliWebSitesi._siteAdi + " sitesine ait server hata mesaji vermistir..");

                    epostaMesaji[ChromeDriverSingleton.ePostaSayisi] = "<font color='red'>" + ilgiliWebSitesi._siteAdi + " sitesine ait server HATA mesaji vermistir..</font>";

                    ChromeDriverSingleton.ePostaSayisi++;

                    ChromeDriverSingleton.siteCevabiOlumluMu = false;

                    return(false);
                }
            }
        }