Mövzunu Açan
#0
Playwright, modern web uygulamalarını test etmek ve otomatikleştirmek için geliştirilmiş güçlü bir kütüphanedir. Kullanıcıların farklı tarayıcılarla etkileşimde bulunmasına olanak tanıyan bu araç, çoklu oturum (multi-session) ve proxy rotasyonu yönetimi gibi gelişmiş özelliklerle dikkat çekmektedir. Bu yazıda, Playwright kullanarak bu özelliklerin nasıl etkin bir şekilde kullanılabileceğine dair detaylı bilgi vereceğim.
Multi-Session Yönetimi
Playwright ile birden fazla oturumu yönetmek, kullanıcıların farklı hesaplarla aynı anda çalışmasına olanak tanır. Örneğin, bir e-ticaret sitesinde aynı anda birden fazla kullanıcı hesabıyla işlem yapmak isteyen bir test senaryosunda, her oturum için ayrı bir tarayıcı örneği oluşturmak gerekir. Aşağıdaki örnek, iki ayrı oturum açmayı göstermektedir:
Bu yaklaşım, farklı kullanıcı hesaplarıyla aynı anda işlem yapmanızı sağlar.
Proxy Rotasyonu Yönetimi
Web otomasyonunda proxy kullanımı, özellikle IP engellemelerini aşmak için önemlidir. Playwright, proxy ayarlarını her yeni tarayıcı bağlamında yapılandırmanıza imkan tanır. Proxy rotasyonu, farklı IP adresleri kullanarak işlem yapmanıza olanak tanır. Aşağıdaki örnek, bir proxy ile tarayıcı bağlamı oluşturmayı göstermektedir:
Bu yapılandırma ile, belirli bir proxy üzerinden web sayfasına erişim sağlanır ve gerektiğinde farklı proxy'ler ile değiştirilebilir.
Sonuç olarak, Playwright ile çoklu oturum ve proxy rotasyonu yönetimi, web otomasyon süreçlerinizi daha etkili hale getirebilir. Bu özelliklerin kullanımı, otomasyon senaryolarınızın esnekliğini artırarak daha karmaşık test senaryolarının gerçekleştirilmesine olanak tanır.
Multi-Session Yönetimi
Playwright ile birden fazla oturumu yönetmek, kullanıcıların farklı hesaplarla aynı anda çalışmasına olanak tanır. Örneğin, bir e-ticaret sitesinde aynı anda birden fazla kullanıcı hesabıyla işlem yapmak isteyen bir test senaryosunda, her oturum için ayrı bir tarayıcı örneği oluşturmak gerekir. Aşağıdaki örnek, iki ayrı oturum açmayı göstermektedir:
CODE
12345678910111213141516171819202122232425
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch();
// İlk oturum
const context1 = await browser.newContext();
const page1 = await context1.newPage();
await page1.goto('https://example.com/login');
await page1.fill('#username', 'user1');
await page1.fill('#password', 'password1');
await page1.click('#login');
// İkinci oturum
const context2 = await browser.newContext();
const page2 = await context2.newPage();
await page2.goto('https://example.com/login');
await page2.fill('#username', 'user2');
await page2.fill('#password', 'password2');
await page2.click('#login');
// Tarayıcıyı kapat
await browser.close();
})();
Bu yaklaşım, farklı kullanıcı hesaplarıyla aynı anda işlem yapmanızı sağlar.
Proxy Rotasyonu Yönetimi
Web otomasyonunda proxy kullanımı, özellikle IP engellemelerini aşmak için önemlidir. Playwright, proxy ayarlarını her yeni tarayıcı bağlamında yapılandırmanıza imkan tanır. Proxy rotasyonu, farklı IP adresleri kullanarak işlem yapmanıza olanak tanır. Aşağıdaki örnek, bir proxy ile tarayıcı bağlamı oluşturmayı göstermektedir:
CODE
1234567891011121314151617181920212223
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch();
const proxyServer = 'http://your-proxy-server:port';
// Proxy ile yeni bir bağlam oluştur
const context = await browser.newContext({
proxy: {
server: proxyServer,
username: 'proxyUsername',
password: 'proxyPassword'
}
});
const page = await context.newPage();
await page.goto('https://example.com');
// Tarayıcıyı kapat
await browser.close();
})();
Bu yapılandırma ile, belirli bir proxy üzerinden web sayfasına erişim sağlanır ve gerektiğinde farklı proxy'ler ile değiştirilebilir.
Sonuç olarak, Playwright ile çoklu oturum ve proxy rotasyonu yönetimi, web otomasyon süreçlerinizi daha etkili hale getirebilir. Bu özelliklerin kullanımı, otomasyon senaryolarınızın esnekliğini artırarak daha karmaşık test senaryolarının gerçekleştirilmesine olanak tanır.