Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Как поучить стоки в таблице



Software-Testing.Ru - портал тестировщиков  

Новые темы форума тестировщиков


Как поучить стоки в таблице
2018-02-27 09:23

Здравствуйте. Возникла проблема не могу получить в цикле построчную информацию о  данных таблицы .В приложенном коде постоянно выдается первая строка прокси и порта а нужно чтобы выдавались в последовательности все строки.

 

 

КОД

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Support.UI;
 
 
namespace Proxy
{
    public partial class Form1 : Form
    {
        IWebDriver Browser;
        Random rnd = new Random();
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            Browser = new OpenQA.Selenium.Chrome.ChromeDriver();
           Browser.Navigate().GoToUrl("http://spys.one/free-proxy-list/RU/");
 
IWebElement selectElem = Browser.FindElement(By.ClassName("clssel")); 
        SelectElement select = new SelectElement(selectElem);
            select.SelectByText("500");
 
            List<IWebElement> New = Browser.FindElements(By.TagName("tr")).ToList();
 
            for (int i = 0; i < New.Count; i++)
            {
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                var Sot = Browser.FindElements(By.ClassName("spy14"));
                MessageBox.Show("Цикл"+ Sot);

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Тут выводит постоянно одну и туже строку

 
            }
 
 
 
 
        }
    }
}
 


Lean-тестирование: теория и практика
2018-02-27 10:37

Автор: Аарон Ходдер (Aaron Hodder)

 

Оригинал статьи: http://testerkiwi.blogspot.ru/2016/02/lean-testing-in-theory-and-practice.html#more

 

Перевод: Ольга Алифанова

 

Есть множество определений тестирования ПО, и множество взглядов на то, как должно выглядеть ответственное тестирование в нашей области. Ваш взгляд на роль тестировщика влияет на то, какие практики и артефакты вы считаете ценными.

Мое любимое определение тестирования дал Кем Кейнер: «Тестирование – это эмпирическое исследование, которое проводится с целью предоставить заинтересованным лицам информацию о продукте или сервисе, который тестировался».

В целом я рассматриваю тестирование, как часть бизнеса по сбору информации и ее передаче.

 

Читать публикацию полностью



Добавление cookie в заросы для выполнения авторизации
2018-02-27 13:05

Коллеги, добрый день

 

Возникли проблема с  передачей cookie 

 

Необходимо извлечь cookie из response и подставить в request

 

Использую систему ubuntu 16.04 LTS

 

apache-jmeter-3.0

 

1. В настройках jmeter.properties установил:

 

CookieManager.delete_null_cookies=false

 

CookieManager.save.cookies=true

 

CookieManager.check.cookies=false

 

Selection_009.png

 

 

2. Добавил HTTP Cookie Manager поверх  Thread group

HTTP Cookie Manager.png

 

 

 

3.  В Response

 

Response headers:
HTTP/1.1 200 OK
Date: Tue, 27 Feb 2018 08:50:52 GMT
Connection: Keep-Alive
Content-Type: application/json
Cache-Control: no-store, no-cache, private
Pragma: no-cache
Content-Length: 307
Content-Encoding: gzip


HTTPSampleResult fields:
ContentType: application/json
DataEncoding: null

 

Response Data:

 

{
    "state" : 1,
    "error" : {
        "code" : 0
    },
    "queries" : [
        {
            "uuid" : "00000000-00000000-00000000-00000000",
            "command" : {
                "plm_type_code" : 205,
                "state" : 3,
                "session_id" : "372276a0279caee08057ff61d1d173c9b74c76374ab8742354f2407d909da3e93b944e7fef90bb56cdddb40224aba3bbb54a148a6a859fb641af5cf90ce97",
                "manager_uuid" : "4f56d703-4f03ab59-5748518b-46bb701b",
                "version" : "5.1.9",
                "new_version" : ""
            }
        }
    ],
    "has_undo" : false,
    "has_redo" : false
}

 

 

4 В следующем Post Request:

 

POST data:
{"state":0,"session":"","queries":[{"uuid":"9aa29562-bb29167d-ee19049b-c39d9f5c","command":{"plm_type_code":206,"state":1}}]}

[no cookies]

Request Headers:
Connection: keep-alive
Referer: http://192.168.XX.XXX:30000/
Accept-Language: ru,en-US;q=0.7,en;q=0.3
X-Requested-With: XMLHttpRequest
Content-Type: application/json
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0) Gecko/20100101 Firefox/58.0
Accept: application/json, text/javascript, */*; q=0.01
Content-Length: 125
Host: 192.168.88.104:30000

 

 

 

Необходимо подставлять значение session_id в последующие POST Request

 

В консоли браузера:

В request подставляется значение session_id

 

Post Request.png

 

 

Добавил BeanShell PostProcessor в запрос, из которого хочу извлечь cookie:

 

import org.apache.jmeter.protocol.http.control.CookieManager;
import org.apache.jmeter.protocol.http.control.Cookie;
props.put("session","${session_id}");

 

BeenShell PostProcessor.png

 

 

В запрос, в которой хотел поместить cookie добавил BinShell PreProcessor

 

import org.apache.jmeter.protocol.http.control.CookieManager;
import org.apache.jmeter.protocol.http.control.Cookie;


CookieManager manager = sampler.getCookieManager();
Cookie cookie1 = new Cookie("session_id",props.get("session"),"192.168.88.104","/query/query.php?",false,-1);
manager.add(cookie1);

 

BinnShell PreProcessor.png

 

 

В результате cookie не перадются в запросе:

 

View Result Tree.png

 

 

Буду  благодарен любым советам

 

 

 

 



Как сделать исполняемый файл?
2018-02-27 14:37

Приветствую!

Написал небольшой код для автологина. Пока что логин/пароль прописываю в коде, в дальнейшем буду считывать из файла, но это потом. В данном случае все запускается из IDEA и отрабатывает как надо. Пытался сделать jar, bat, exe - не запускается (командная строка говорит Error: An unexpected error occurred while trying to open file loginFF.jar). Может глянете, подскажите, что делаю не так. Нужен именно файл, который можно будет запустить на любой машине.

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import java.nio.file.Paths;
import java.util.concurrent.TimeUnit;
 
 
public class Login{
 
    public static void main(String[] args) throws InterruptedException {
        setup();
        userLogin();
    }
    private static WebDriver d;
 
    @BeforeClass
    public static void setup() {
//прописываем путь к драйверу в системную переменную
        String pathToGeckoDriver = Paths.get("E:\\WORK\\QA\\GIT\\geckodriver\\geckodriver.exe").toAbsolutePath().toString();
        System.setProperty("webdriver.gecko.driver", pathToGeckoDriver);
//используем свой профиль фаерфокса
        System.setProperty("webdriver.firefox.profile", "default");
//создаем экземпляр вебдрайвера
        d = new FirefoxDriver();
//небольшие настройки
        d.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
        d.manage().window().maximize();
//целевой сайт
        d.get("http://promotions.williamhill.com");
 
    }
 
    @Test
    public static void userLogin() throws InterruptedException {
//строчные переменные для простоты использования локаторов
        String loginButtonXPath = "/html/body/div[2]/div/div/div[2]/wf-header/header/div/div[2]/wf-user-button/div/a/span";
        String loginFieldCSS = "#login-form-username";
        String passFieldCSS = "#login-form-password";
//взаимодействие с элементами 
        d.findElement(By.xpath(loginButtonXPath)).click();
        d.findElement(By.cssSelector(loginFieldCSS)).clear();
        d.findElement(By.cssSelector(loginFieldCSS)).sendKeys("demarNOIR");//тестовый логин
        d.findElement(By.cssSelector(passFieldCSS)).clear();
        d.findElement(By.cssSelector(passFieldCSS)).sendKeys("DN1983az");//тестовый пароль
        d.findElement(By.cssSelector(passFieldCSS)).sendKeys(Keys.ENTER);
        Thread.sleep(20000000);
 
    }
}

Вот maven:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>logFF</groupId>
    <artifactId>loginFF</artifactId>
    <version>1.0-SNAPSHOT</version>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencies>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.9.1</version>
        </dependency>

        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.2</version>
            <scope>test</scope>
        </dependency>

    </dependencies>
</project> 

Слип там спецом, не ругайте. Гекодрайвер и фаерфокс убиваю из cmd -> taskkill ****.exe /F /IM - другим батничком, зачем так, не спрашивайте, так надо =)

 

Готов предоставить недостающую информацию.
Если есть совет, решение или пинок в нужном направлении, жду с нетерпением.



© 2010 | Software-Testing.Ru


В избранное