0
這對於測試建議(沒什麼不好)Java的硒線程同步暴力破解
我想和硒2包含了暴力破解程序誰在「0-10」密碼保護的網頁打破
我有這個(一個小例子不是實際的代碼)...
public class test implements Runnable {
static WebDriver driver;
test() {
StageLoader();
Thread t = new Thread(this);
t.start();
}
//starts firefox and goes to the page
private void StageLoader() {
driver = new FirefoxDriver();
driver.get("http://test.com/login.php");
}
@Override
public void run() {
for (int i = 0; i <= 10; i++) {
bruteForce(i);
}
}
private void bruteForce(int i) {
driver.findElement(
By.name("password"))
.sendKeys(Integer.toString(i));
String output = driver.findElement(By.id("result")).getText();
if (output.indexOf("sucess") != -1) {
//stop
} else {
//continue
}
}
public static void main(String[] args) {
new FiberBrute();
}
}
它完美的作品,但它缺乏同步的,我希望它由一個從0到10唯一繼續下一個如果!成功,我已經嘗試了很多,使這與並行工作,但我失敗:(你能請幫我一下嗎?
在此先感謝:d
那麼你正在嘗試多線程的部分是bruteForce方法?所以它可以嘗試1-3並行,然後4-6等? – Thomas 2012-03-09 21:19:35
如果您等待上一次嘗試通過或失敗,那麼您是單線程的,不需要同步。這裏並行發生了什麼?多個用戶每個都去1-10? – Thomas 2012-03-09 22:07:38
問題在於for循環一次全部完成,我需要做一些事情才能等到第一次嘗試完成,然後等待第二次嘗試,等等......例如,如果1不成功,嘗試2,如果2不成功嘗試3,等等...我現在所有嘗試0到10都是一團糟:P – 2012-03-09 22:16:39