życie zabija powoli :)

 

17

listopada

2015

Automatyzacja żmudnych zadań/testów stron www w firefox

Załóżmy że jest coś żmudnego do zrobienia w przeglądarce, co wymaga po prostu durnego wyklikania dziesiątków opcji na jakiejś stronie i powtórzenia całej procedury kilkanaście/dziesiąt razy. Każde powtórzenie może wymagać powtórzenia kilkunastu kliknięć, ale po drodze są niewielkie zmiany (nazwa własna, data, cokolwiek).

Istnieje kilka opcji automatyzacji takiej procedury, czy to przez przechwytywanie zapytań przeglądarki i własna interakcja ze stroną czy pominięcie strony www i bezpośrednie dłubanie w backendzie danego interfejsu (gdy mamy dostęp) lub za pomocą jakiegoś api.

Można też użyć innego rozwiązania - firefox posiada pluginy które pozwalają w pełni kontrolować go klawaiaturą. Wiele z nich ma skróty klawiszowe z edytora tekstu vim ( vimperator, pentadactyl i inne ) . Przy ustandaryzowanym układzie strony możemy zautomatyzować interakcję do określonych sekwencji znaków i mieć stosunkowo szybko automat/testsuite. Jest to o wiele lepsze niż kazanie programowi sterować myszką, bo wtedy skrypt jest zależny od rozdzielczości ekranu i położenia na nim okna programu itp.

Do kompletu potrzebne jest jeszcze narzędzie generujące takie sekwencje znaków. Na windows się nie znam, ale na linux jest xdotool.

Przykładowy kawałek skryptu

# przewijamy stronę na koniec

xdotool key Page_Down
xdotool key Page_Down
xdotool key Page_Down
xdotool key Page_Down

# szukamy pola z opisem "Create"
xdotool type fCreate
sleep 1

# enter
xdotool key KP_Enter
sleep 1


# przejscie do pola #8 
xdotool type f8
sleep 1

# wpisanie tekstu
xdotool type blablabla
xdotool key KP_Enter
# wyjscie z trybu edycji ( tak jak w vim ) 
xdotool key Escape

sleep 2

(....)

Wadą tego rozwiązania jest to że na czas działania skryptu nie możemy korzystać z komputera, bo zakłóci wejście programu xdotool. Być może jest możliwość izolacji wejścia xdotool do danego programu, nie spradzałem.

Problem jaki może się trafić jest przy osadzonych obiektach flash w stronie, wtedy przeglądarka może oddać mu kontrolę nad klawiaturą, wtedy byc może trzeba w xdotool dodać jakieś zdarzenia myszkowe aby tą kontrolę odzyskać.

 
 

09

listopada

2015

Chyba wyrosłem z filmów o 007

Byłem na premierze najnowszej części przygód wspomnianego agenta, i wyszedłem raczej rozczarowany.

Moim zdaniem widz od filmu spodziewa się dobrej zabawy, i w zależności od gatunku prezentuje się ona różnie. Prawdopodobnie najważniejsze jest aby film zaskakiwał widza. Ten nie bardzo to robi.

O ile fabuła nie jest do przewidzenia, elementy scenariusza już są. Wiadomo kiedy spokojna, pełna napięcia scena zostanie nagle przerwana w hałaśliwy sposób (przynajmniej dwa razy się na tym złapałem), czarne charaktery są oczywiste do rozpoznania w filmie (także ten który miał być niespodzianką dla widzów) - generalnie film praktycznie wcale nie zaskakuje i wydaje się zbyt "łatwy".

To co jest warte zobaczenia to schowane w filmie aluzje do poprzednich filmów 007, nie tylko z tym samym aktorem ale i starszych. Bloefeld ma swojego charakterystycznego kota, i (co - znowu - jest do bólu przewidywalne) w filmie dorabia się swojej charakterystycznej blizny na twarzy (jakby tylko pokazali tego kota później to bym na to nie wpadł). Jest typowy milczący osiłek który włazi 007 w drogę, są pościgi, samochody z gadżetami jak w starych filmach, tajne bazy czarnych charakterów które wylatują w powietrze (tu byłem trochę rozczarowany, to stało się trochę bez powodu), organizacja która chce rządzić światem, itp.

Niestety nieco głupi scenariusz (i kompletnie nieprzekonujący 'wątek romantyczny') psuje całość. Do tego Scena otwierająca film jest pełna długich efektownych ujęć, potem jednak już nie jest tak dobrze. No i te kompletnie drewniane 'sceny miłosne' i nie wiadomo po co wciśnięta M. Belucci która w sumie gra krótką rolę na początku i znika z filmu.

Czy warto obejrzeć? Dla pasjonatów serii - chyba tak (zeby wyłapać te wszystkie odwołania do innych filmów). Inni mogą sobie raczej odpuścić.

Nie wiem czy ze mnie robi się zgred, czy ten film jakiś taki nieudany.

 
 

Archiwum

Kanały

Miniblog

15 kwietnia 2013, 10:39:14 | mount.cifs error 5 |

W przypadku gdy przy próbie montowania mount.cifs dostajemy

mount error(5): Input/output error

Do opcji montowania należy dodać "sec=ntlmv2"

np.

mount -t cifs //serwer/zasob /mnt/gdziestam -o user=login,password=sekrit,noperm,iocharset=utf8,sec=ntlmv2

07 sierpnia 2012, 10:47:46 | Niepisane pisane prawo testowania oprogramowania |

Aby wykryć dodatkowe błedy w rozwiązaniu/programie który sam pisałeś testowałeś i weryfikowałeś, sam napisz do niego dokumentację.

14 września 2011, 22:19:53 | klucz ssh na gitorious |

Od niedawna przyłapałem się na tym że na gitorious.org przestał działać mój klucz ssh. Próba ponownej instalacji klucza powodowała jego odrzucanie ( " ssh key invalid " ).

Problem polega na tym ze zamiast user@host na końcu klucza trzeba wpisać swój email jaki podaliśmy przy rejestracji w gitorious.org. Być może problem nie dotyczy wszystkich, ale u mnie było to jedyne działające rozwiązanie.

04 lipca 2011, 12:48:34 | Tunelowanie esx po ssh |

Szybka notatka na przyszłość; aby wbić się na serwer ESX za pomocą vSphere poprzez tunel SSH, trzeba przeforwardować porty 443, 902, 903 oraz dodać wpis do hosts postaci

127.0.0.1 esxhost

bez tego nie pójdzie. Posiadanie wpisu określającego 127.0.0.1 jako "localhost" też z jakiegoś powodu nie wystarcza i dostaje się tajemnicze informacje o nieprawidłowym hoście, braku łączności itp.

02 sierpnia 2010, 20:12:02 | [mini] nietypowy problem CUPS |

ERRDOS - ERRbadaccess 
(Invalid open mode.) opening 
remote spool Test Page

W takiej sytuacji należy w windows w wlaściwościach drukarki odznaczyć "drukuj bezpośrednio na drukarkę". Dziwne, ale zostawię to sobie tutaj na przyszłość.