Skip to main content

Advanced Playwright E2E Framework

Provides an enterprise-grade Playwright test automation framework with an 8-layer architecture for scalable and maintainable testing.

Install this skill

or
0/100

Security score

The Advanced Playwright E2E Framework skill was audited on Feb 27, 2026 and we found 43 security issues across 3 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 213

Template literal with variable interpolation in command context

SourceSKILL.md
213return this.page.screenshot({ fullPage: true, path: `test-results/${name}.png` });
medium line 338

Template literal with variable interpolation in command context

SourceSKILL.md
338this.logger.info(`Logging in as: ${username}`);
medium line 348

Template literal with variable interpolation in command context

SourceSKILL.md
348this.logger.info(`Logging in with Remember Me as: ${username}`);
medium line 366

Template literal with variable interpolation in command context

SourceSKILL.md
366this.logger.warn(`Login failed as expected: ${expectedError}`);
medium line 390

Template literal with variable interpolation in command context

SourceSKILL.md
390this.logger.info(`Adding ${quantity}x "${productName}" to cart`);
medium line 401

Template literal with variable interpolation in command context

SourceSKILL.md
401this.logger.info(`Cart count verified: ${expected}`);
medium line 405

Template literal with variable interpolation in command context

SourceSKILL.md
405this.logger.info(`Searching for: "${query}"`);
medium line 409

Template literal with variable interpolation in command context

SourceSKILL.md
409this.logger.info(`Found ${count} results for "${query}"`);
medium line 441

Template literal with variable interpolation in command context

SourceSKILL.md
441this.logger.info(`Checkout complete. Order ID: ${orderId}`);
medium line 493

Template literal with variable interpolation in command context

SourceSKILL.md
493const entry = `[${timestamp}] [${level}] [${this.context}] ${message}`;
medium line 527

Template literal with variable interpolation in command context

SourceSKILL.md
527throw new Error(`Condition not met within ${timeout}ms`);
medium line 556

Template literal with variable interpolation in command context

SourceSKILL.md
556return `user_${id}@test.com`;
medium line 561

Template literal with variable interpolation in command context

SourceSKILL.md
561return `(555) ${String(num).slice(0, 3)}-${String(num).slice(3, 7)}`;
medium line 606

Template literal with variable interpolation in command context

SourceSKILL.md
606this.logger.info(`GET ${endpoint}`);
medium line 607

Template literal with variable interpolation in command context

SourceSKILL.md
607const response = await this.request.get(`${this.baseURL}${endpoint}`, { headers });
medium line 609

Template literal with variable interpolation in command context

SourceSKILL.md
609this.logger.debug(`Response ${response.status()}`, body);
medium line 614

Template literal with variable interpolation in command context

SourceSKILL.md
614this.logger.info(`POST ${endpoint}`);
medium line 615

Template literal with variable interpolation in command context

SourceSKILL.md
615const response = await this.request.post(`${this.baseURL}${endpoint}`, {
medium line 620

Template literal with variable interpolation in command context

SourceSKILL.md
620this.logger.debug(`Response ${response.status()}`, body);
medium line 625

Template literal with variable interpolation in command context

SourceSKILL.md
625this.logger.info(`PUT ${endpoint}`);
medium line 626

Template literal with variable interpolation in command context

SourceSKILL.md
626const response = await this.request.put(`${this.baseURL}${endpoint}`, {
medium line 634

Template literal with variable interpolation in command context

SourceSKILL.md
634this.logger.info(`DELETE ${endpoint}`);
medium line 635

Template literal with variable interpolation in command context

SourceSKILL.md
635const response = await this.request.delete(`${this.baseURL}${endpoint}`, { headers });
medium line 665

Template literal with variable interpolation in command context

SourceSKILL.md
665return this.api.post('/api/auth/refresh', {}, { Authorization: `Bearer ${token}` });
medium line 684

Template literal with variable interpolation in command context

SourceSKILL.md
684return this.api.get('/api/products', { Authorization: `Bearer ${token}` });
medium line 688

Template literal with variable interpolation in command context

SourceSKILL.md
688return this.api.get(`/api/products/${id}`, { Authorization: `Bearer ${token}` });
medium line 692

Template literal with variable interpolation in command context

SourceSKILL.md
692return this.api.get(`/api/products?q=${encodeURIComponent(query)}`, {
medium line 693

Template literal with variable interpolation in command context

SourceSKILL.md
693Authorization: `Bearer ${token}`,
medium line 807

Template literal with variable interpolation in command context

SourceSKILL.md
807console.log(`Page title: ${title}`);
medium line 891

Template literal with variable interpolation in command context

SourceSKILL.md
891console.log(`Order placed: ${orderId}`);
medium line 902

Template literal with variable interpolation in command context

SourceSKILL.md
902```yaml
low line 41

Access to .env file

SourceSKILL.md
41├── .env # Environment variables
low line 42

Access to .env file

SourceSKILL.md
42├── .env.example # Environment template
low line 116

Access to .env file

SourceSKILL.md
116forbidOnly: !!process.env.CI,
low line 117

Access to .env file

SourceSKILL.md
117retries: process.env.CI ? 2 : 0,
low line 118

Access to .env file

SourceSKILL.md
118workers: process.env.CI ? 4 : undefined,
low line 126

Access to .env file

SourceSKILL.md
126baseURL: process.env.BASE_URL,
low line 173

Access to .env file

SourceSKILL.md
173baseUrl: process.env.BASE_URL || 'http://localhost:3000',
low line 175

Access to .env file

SourceSKILL.md
175username: process.env.TEST_USERNAME || 'testuser',
low line 176

Access to .env file

SourceSKILL.md
176password: process.env.TEST_PASSWORD || 'testpass123',
low line 179

Access to .env file

SourceSKILL.md
179timeout: Number(process.env.API_TIMEOUT) || 30_000,
low line 182

Access to .env file

SourceSKILL.md
182level: process.env.LOG_LEVEL || 'INFO',
low line 173

External URL reference

SourceSKILL.md
173baseUrl: process.env.BASE_URL || 'http://localhost:3000',
Scanned on Feb 27, 2026
View Security Dashboard
Installation guide →