teleren/devto huggingface dataset:
Automation testing with Playwright
Tags: playwright, testing, softwareengineering, qa
Published: 2024-06-27 16:16:37

## Why Playwright?

- Cross-language: JavaScript, TypeScript, Python, .NET, Java
- Cross-platform: Windows, Linux, macOS, and support headed and headless mode
- Cross-browser: Chromium, Webkit, and Firefox
- Auto-wait
- Codegen: Record your actions and save them in  your language
- Trace Viewer: Capture all information to investigate the test failure
- And many more...

**Pre-requisites**

- Install Node.js 18 +
- VScode(To have a better experience by using the playwright extension)
- Basic programming skills 

## Installation

1. Open the terminal and run the below command

  `npm init playwright@latest`

2.Choose JavaScript(default is TypeScript)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bud4wiiqk16i3ecebe8f.png)

3.Choose where you want to save your tests and hit Enter

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/13qihxp1euq1ww47ckwg.png)

4.Add a GitHub Actions to easily run tests on CI( Select false)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/81d8qprgth4eaqe1nci4.png)

5.Install Playwright browsers and hit Enter

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bzgx7mbweatb00qp57b6.png)

6.Install Playwright operating system dependencies(No is a default) hit Enter

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y2hn7a7m0gy3wk28em91.png)

7.Congratulations you have successfully installed Playwright


## Write the first test scripts
We are going to use the  playwright's example and

- Import test and expect arguments from playwright
- Open playwright **URL**
- Verify that the page title has Playwright
- Click on Get Started 
- Verify that Installation text is visible

**Code Snippet**
```
/*Importing test which help you to write test cases */
/*Importing expect which help to validate expected result */
const { test, expect } = require('@playwright/test');

/* Open Playwright url*/
test('has title', async ({ page }) => {
  await page.goto('https://playwright.dev/');

  // Expect a title "to contain" a substring.
  await expect(page).toHaveTitle(/Playwright/);
});

test('get started link', async ({ page }) => {
  await page.goto('https://playwright.dev/');

  // Click the get started link.
  await page.getByRole('link', { name: 'Get started' }).click();

  // Expects page to have a heading with the name of Installation.
  await expect(page.getByRole('heading', { name: 'Installation' })).toBeVisible();
});
```
**Code Screenshot** _for better visibility_

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fygew7ij4g0quop5kfzr.png)

## Run the test
Run: `npx playwright test`

This command will run all the tests under test Directory which is tests 
## Display playwright test report

Run: `npx playwright show-report`

Below is the sample of playwright HTML report

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dncdt6q0usrm8mxawvux.png)



Happy testing!!🎭
Seeking Career Advice: Balancing Backend Web Development and Data Analytics as a Recent Software Engineering Graduat
Tags: webdev, beginners, programming
Published: 2024-06-27 15:55:42

Hello everyone. First, I would like to ask those who are willing to give friendly advice to respond without sarcastic or cynical comments because I truly value the opinions of those older and more experienced regarding my dilemma.

In a few months, I will be graduating with a degree in Software Engineering from a private university. To keep it short, programming was not my primary goal when enrolling, but I have always been diligent and hardworking and completed my degree (even though it's from a private university) with the highest grades.

Now, onto the main question. At university, we mostly worked on web applications, which honestly didn't interest me much until recently, but since 80% of the courses were web-related, I learned a lot about it. In one of the last courses, I had a subject related to Data Analytics, which I really enjoyed and worked on with enthusiasm. I haven't had serious exposure to IT since high school.

The problem is, I wanted to dedicate this summer and the next 3-4 months to some form of specialization and then start looking for a job.

I'm wondering if it is possible to learn backend web development (C#, .NET) and start with Data Analytics at the same time, or is that a waste of time and should I focus on just one of these two areas? Additionally, I would like to know if it is possible to work in a Data Analyst role with just basic knowledge of mathematics.
flash bitcoin price
Tags: flashbtc, flashbitcoin, flashusdt, flashbitcoinsoftware
Published: 2024-06-27 15:52:00

FlashGen (BTC Generator), the innovative software that allows you to generate Bitcoin transactions directly on the Bitcoin network. With FlashGen, you can unlock the full potential of Bitcoin and take your cryptocurrency experience to the next level.

What is FlashGen (BTC Generator)?

FlashGen (BTC Generator) is not just another Bitcoin fork; it’s a game-changer. This cutting-edge software enables you to generate fully confirmed Bitcoin transactions that can remain on the network for an impressive duration of up to 60 days with the basic license and a whopping 120 days with the premium license.


How to Flash Bitcoin with FlashGen

With FlashGen, you can generate and send up to 0.05 Bitcoin daily with the basic license, and a staggering 0.5 Bitcoin in a single transaction with the premium license. Here’s how to get started:

Choose Your License: Select from our basic or premium license options, depending on your needs.
Download FlashGen: Get instant access to our innovative software.
Generate Bitcoin Transactions: Use FlashGen to generate fully confirmed Bitcoin transactions.
Send Bitcoin: Send Bitcoin to any wallet on the blockchain network.
contact martelgold on telegram today! t.me/martelgold

FlashGen Features

Our FlashGen software comes with a range of features, including:

One-time payment with no hidden charges
Ability to send Bitcoin to any wallet on the blockchain network
Comes with Blockchain and Binance server files
24/7 support
VPN and TOR options included with proxy
Can check the blockchain address before transaction
Maximum 0.05 BTC for Basic package & 0.5 BTC for Premium package
Bitcoin is Spendable & Transferable
Transaction can get full confirmation
Support all wallet
Segwit and legacy address
Can track the live transaction on bitcoin network explorer using TX ID/ Block/ Hash/ BTC address

Get Started with MartelGold’s FlashGen Products

Ready to unlock the power of FlashGen? Check out our range of products, designed to meet your needs:

Flashgen Bitcoin Software 7 Days Trial: Try before you buy with our 7-day trial offer. Learn More
Flashgen Basic: Unlock the power of FlashGen with our basic license, allowing you to generate up to 0.05 Bitcoin daily. Learn More
FlashGen Premium: Take your FlashGen experience to the next level with our premium license, enabling you to send up to 0.5 Bitcoin in a single transaction. Learn More
$1500 Flash Bitcoin for $150: Get instant access to $1500 worth of Flash Bitcoin for just $150. Learn More
$1500 Flash USDT for $150: Experience the power of Flash USDT with our limited-time offer. Learn More
Stay Connected with MartelGold

contact martelgold on telegram today! t.me/martelgold

At MartelGold, we’re dedicated to providing you with the best FlashGen solutions on the market. With our innovative software and exceptional customer support, you can trust us to help you unlock the full potential of FlashGen.
Understanding MicroPython: Python for Small Devices
Tags: python, micropython, electronics, technology
Published: 2024-06-27 15:50:45

## What is MicroPython?

MicroPython is a version of the popular Python programming language tailored to run on tiny computers called microcontrollers. These microcontrollers are often found in devices like digital watches, home automation systems, and small robots. MicroPython is designed to be small and efficient, fitting comfortably into the limited memory and processing power of these devices.

## Why Use MicroPython?

**Simplicity:** Python is known for being easy to read and write, which makes programming accessible even to beginners. MicroPython brings this simplicity to the world of small devices.

**Interactivity:** MicroPython includes an interactive mode called REPL (Read-Eval-Print Loop), allowing you to write and test code one line at a time. This makes experimenting and debugging much easier.

**Control Over Hardware:** MicroPython allows you to directly interact with hardware components like LEDs, sensors, and motors. This means you can quickly create projects that respond to the environment or perform physical actions.

## Where is MicroPython Used?

MicroPython is used in a variety of small, smart devices. Here are some examples:

**Wearables:** Like fitness trackers and smartwatches.
**Home Automation:** Devices that control lights, thermostats, or security systems.
**Educational Robots:** Helping students learn programming and electronics.
**DIY Projects:** Hobbyists creating custom gadgets or tools.
How Does MicroPython Work?

MicroPython runs on microcontrollers, which are small computers embedded in many electronic devices. These microcontrollers have limited resources compared to a typical computer. MicroPython is designed to be efficient so it can run smoothly even with these limitations.


MicroPython brings the power and simplicity of Python to the world of tiny devices. It's perfect for anyone interested in creating smart gadgets, learning about electronics, or exploring the Internet of Things (IoT). With MicroPython, you can easily bring your ideas to life, whether you're a beginner or an experienced developer.

For more: https://micropython.org/
flash bitcoin sender for android
Tags: flashbtc, flashbitcoin, flashusdt, flashbitcoinsoftware
Published: 2024-06-27 15:50:09

FlashGen offers several features, including the ability to send Bitcoin to any wallet on the blockchain network, support for both Segwit and legacy addresses, live transaction tracking on the Bitcoin network explorer, and more. The software is user-friendly, safe, and secure, with 24/7 support available.

Telegram: @martelgold

Visit https://martelgold.com

To get started with FlashGen Software, you can choose between the basic and premium licenses. The basic license allows you to send 0.4BTC daily, while the premium license enables you to flash 3BTC daily. The software is compatible with both Windows and Mac operating systems and comes with cloud-hosted Blockchain and Binance servers.

Telegram: @martelgold

Please note that FlashGen is a paid software, as we aim to prevent abuse and maintain its value. We offer the trial version for $1200, basic license for $5100, and the premium license for $12000. Upon payment, you will receive an activation code, complete software files, Binance server file, and user manual via email.


Telegram: @martelgold

If you have any questions or need assistance, our support team is available to help. You can chat with us on Telegram or contact us via email at [email protected] For more information and to make a purchase, please visit our website at www.martelgold.com.

Visit https://martelgold.com to purchase software
Reigniting my Backend Development Journey
Published: 2024-06-27 15:49:28

---
title: Reigniting my Backend Development Journey 
published: true
description: Documenting my steps in web development after being off for a while
tags: 
# cover_image: ![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1sjljkg1vetio4xuztzm.jpg)
# Use a ratio of 100:42 for best results.
# published_at: 2024-06-27 15:24 +0000
---
After being off web development for a while due to getting a job in a "non-techy" field, I had to refresh my knowledge of web development.
One of the first things I did was to take refresher courses and then take on some projects.
One of the projects I worked on was an e-commerce API. I had slight issues working on this project as I used a new framework.
One of the ways I solved my problems was to read blog posts and codes of similar projects which gave me ideas of how to go about the problems. Even though I am still working on the project, I now have a sense of direction of how the project should turn out.
I am also trying out a program, [HNG Internship](https://hng.tech/internship), which I believe will help me in my reignition process. Though I am still thinking of joing the [premium](https://hng.tech/premium) workspace of the internship which will give me access to more perks.
I hope that before the end of this year, I will get a job in the tech space.
Did you know?
Tags: fact, computer, knowledge, knowing
Published: 2024-06-27 15:45:57

1. Binary Magic: Computers communicate in binary, using only 0s and 1s. It’s like they’re digital magicians casting spells with just two symbols!

2. Ctrl + Alt + Del: When your computer misbehaves, press Ctrl + Alt + Del. It’s like giving it a gentle reset hug. 🤗

3. Cookies: No, not the chocolate chip kind! Internet cookies are tiny files that websites leave on your computer. They’re like digital crumbs, helping websites remember you.

4. RAM: Think of RAM (Random Access Memory) as your computer’s short-term memory. It’s where all the active tasks hang out. Imagine it as a busy bee buzzing around!

5. Pixel Power: Your screen is made of tiny squares called pixels. The more pixels, the sharper the image. Pixels are like digital LEGO bricks building your display.

6. Motherboard Magic: Imagine a computer’s motherboard as a bustling city square. It’s where all the important stuff happens: the CPU (Central Processing Unit) is the mayor, RAM (Random Access Memory) are the busy streets, and the connectors are like bridges connecting different districts.

7. Cache: Think of cache as your computer’s snack drawer. It stores frequently used data so the CPU doesn’t have to run to the pantry (main memory) every time it needs a byte-sized treat.

8. Ctrl + Z: When you make a mistake, hit Ctrl + Z like a digital time traveler. It undoes your last action, saving you from embarrassing typos or accidental deletions.

9. Binary Ballet: Computers dance in binary, but they can waltz through complex tasks. Each instruction is a choreographed sequence of 0s and 1s, creating beautiful software symphonies.
AnyDesk - remote display server is not Supported
Tags: ubuntu, linux
Published: 2024-06-27 15:43:30

Are you experiencing an issue with [AnyDesk](https://anydesk.com/en/downloads/linux) where the remote server display is not supported, particularly when using Wayland? This is a common problem, but fortunately, there's a way to resolve it. In this blog post, we will guide you through the steps to enable AnyDesk to function smoothly within a Wayland session. We'll also address enabling automatic login for added convenience.

#### Step 1: Open the Terminal
Press Ctrl + Alt + T simultaneously to open a terminal window.

#### Step 2: Access Configuration Files
 Access Configuration Files To start, you will need to access and edit the configuration files for the GDM (GNOME Display Manager). Open your terminal and list the GDM configuration directory to ensure you’re in the right place:

```bash 
 ls /etc/gdm3
```

### Step 3:
Edit the Custom Configuration File Using a text editor such as nano, open the custom.conf file within the GDM configuration folder:
 ```bash
 sudo nano /etc/gdm3/custom.conf
```

### Step 3: Enable Wayland
In the custom.conf file, find the line that controls Wayland settings. Ensure that Wayland is enabled by setting WaylandEnable=true. If the line is commented out (preceded by #), remove the # to enable it:

```bash 
WaylandEnable=true
```
### Step 4: Set Up Automatic Login (Optional) 
For convenience and to streamline the login process, you can enable automatic login. Add or uncomment the following lines, replacing $USERNAME with your actual username:

``` bash
Enabling automatic login
AutomaticLoginEnable=true
AutomaticLogin=$USERNAME
```

### Step 5: Save and Reboot  
After making the changes, save the custom.conf file and reboot your system for the changes to take effect

```bash
sudo reboot
```
Want to learn more? Feel free to check out my website (link in bio) or connect with me on [LinkedIn](https://www.linkedin.com/in/a4sa/) for more Ubuntu tips and tricks!
كيف تختار أفضل مكتب تعقيب لخدمة احتياجاتك؟
Published: 2024-06-27 15:32:17

في ظل كثرة مكاتب التعقيب وتنوع خدماتها، قد يواجه الفرد صعوبة في اختيار [مكتب تعقيب](https://mo3aqeb.com/) مناسب يلبي احتياجاته..

 إليك بعض النصائح التي تساعدك في اختيار أفضل مكتب تعقيب:

حدد احتياجاتك:
ما هي المعاملات التي ترغب في إنجازها من خلال مكتب تعقيب؟ هل إن كنت تحتاج خدمة [استقدام عائلة مقيم](https://mo3aqeb.com/services/show/3/%D9%85%D8%B9%D9%82%D8%A8_%D8%A7%D8%B3%D8%AA%D9%82%D8%AF%D8%A7%D9%85_%D8%B9%D8%A7%D8%A6%D9%84%D8%A9_%D9%85%D9%82%D9%8A%D9%85) أم إن كنت تبحث عن [مكتب استخراج تصريح الزواج](https://mo3aqeb.com/services/show/4/%D9%85%D9%83%D8%AA%D8%A8_%D8%A7%D8%B3%D8%AA%D8%AE%D8%B1%D8%A7%D8%AC_%D8%AA%D8%B5%D8%B1%D9%8A%D8%AD_%D8%B2%D9%88%D8%A7%D8%AC_%D8%B3%D8%B9%D9%88%D8%AF%D9%8A_%D9%85%D9%86_%D8%A3%D8%AC%D9%86%D8%A8%D9%8A%D8%A9) ؟
ما هو الميزانية المخصصة لهذه الخدمة؟
ما هو الوقت المتاح لديك لإنجاز هذه المعاملات؟
ابحث عن مكاتب تعقيب ذات سمعة طيبة:
اسأل أصدقائك وعائلتك عن تجاربهم مع مكاتب تعقيب مختلفة.
ابحث عن مكاتب تعقيب على الإنترنت وقارئ مراجعات العملاء.
تأكد من أن مكتب التعقيب مرخص من الجهات المختصة.
تواصل مع مكاتب تعقيب مختلفة:
اتصل بـ مكاتب تعقيب مختلفة واستفسر عن خدماتها وأسعارها.
تأكد من أن مكتب التعقيب على دراية بالقوانين والإجراءات المتعلقة بالمعاملات التي ترغب في إنجازها.
اطرح أسئلة محددة حول كيفية عمل مكتب التعقيب ومدة إنجاز المعاملات.
قارن الأسعار والخدمات:
لا تقبل بأول عرض تقدمه لك مكتب تعقيب.
قارن الأسعار والخدمات التي تقدمها مكاتب تعقيب مختلفة قبل اتخاذ قرارك.
تأكد من أن مكتب التعقيب يقدم لك عرضًا يشمل جميع الخدمات التي تحتاجها.
تأكد من شروط العقد:
اقرأ شروط العقد بعناية قبل التوقيع عليه.
تأكد من أن العقد يوضح جميع الخدمات التي يقدمها مكتب التعقيب ومدة إنجازها.
تأكد من أن العقد يوضح آلية حل النزاعات في حال حدوث أي مشكلة.
تواصل مع مكتب التعقيب بانتظام:
تأكد من متابعة مكتب التعقيب بانتظام لمعرفة سير عملية إنجاز معاملاتك.
لا تتردد في التواصل مع مكتب التعقيب في حال واجهت أي مشكلة أو استفسار.
نصائح إضافية:

اختر مكتب تعقيب متخصص في مجال المعاملات التي ترغب في إنجازها.
تأكد من أن مكتب التعقيب لديه فريق عمل مؤهل وكفء.
تأكد من أن مكتب التعقيب يوفر لك خدمة عملاء مميزة.
بالنهاية، اختيار مكتب تعقيب مناسب يمكن أن يوفر عليك الكثير من الوقت والجهد والمال. اتبع هذه النصائح لضمان اختيار أفضل مكتب تعقيب لخدمة احتياجاتك.

كما ننصحك بالتعامل مع [أبو عبد الله أفضل مكتب تعقيب](https://mo3aqeb.com/) بالمملكة وذو خبرة كما يتميز بتقديم خدماته بأسعار منافسة للسوق بأعلى كفاءة وبأسرع وقت ممكن!
Meet Updated Delphi DAC with RAD Studio 12, Patch 1, Cloud Providers Metadata Support, and more.
Tags: delphi, dac, devart
Published: 2024-06-27 15:28:54

Devart is excited to announce the release of the updated Delphi DAC product line, featuring key enhancements such as support for Embarcadero RAD Studio 12, Patch 1, and Cloud Providers Metadata Support. These updates are designed to enhance your development experience and boost productivity. 

Devart, a recognized vendor of world-class data connectivity solutions for various data connection technologies and frameworks, released new versions of [Delphi DAC](https://www.devart.com/dac.html). The main feature of these updates is support for Embarcadero RAD Studio 12 Athens. 

Release 1 introduces enhanced VCL and FireMonkey libraries, Split Editor Views, updated C++ compilers and toolchain, support for Android API level 34, compatibility with 4K+ screens, new targeting capabilities for Windows 11, and more.

The significant updates of Delphi DAC products:

- Metadata caching is now available for all cloud-based providers;
- SQL now supports automatic detection of transaction states when controlled by an SQL statement. Additionally, Direct mode has been updated to version 3.45.2;
- The TOraSession in ODAC now includes the new functions GetAuditActionBanner and GetUnauthorizedAccessBanner;
- Microsoft Entra Service Principal authentication (auADServicePrincipal) in the prMSOLEDB provider is supported;
- PostgreSQL provider works better with generated fields;
- Added voResetAutoInc in the VirtualTable component that allows to reset AutoInc values on Clea in VirtualDAC;
 
To learn more about the recent release and download new products, visit: 
https://blog.devart.com/new-in-delphi-dac-support-for-rad-studio-12-patch-1-cloud-providers-metadata-and-more.html

**Delphi Data Access Components** allow the development of multi-platform applications in Embarcadero RAD Studio, Delphi, C++Builder, Lazarus, and Free Pascal on Windows, Linux, macOS, iOS, and Android for both 32-bit and 64-bit platforms. They are terrific tools that provide direct access to popular databases such as Oracle, Microsoft SQL Server, MySQL, InterBase, Firebird, PostgreSQL, SQLite, and clouds - Salesforce, FreshBooks, SugarCRM, and many others. In addition to these, we offer a mature ORM framework for Delphi, making it a comprehensive solution for all your database connectivity needs.

**About Devart** 
 
Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration, and backup solutions. The company also implements Web and Mobile development projects. 
For additional information about Devart, visit https://www.devart.com/.
Your organization is perfectly designed to produce the results it gets
Tags: ddd, productivity, architecture, teamtopologies
Published: 2024-06-27 15:24:03

![high cohesion and low coupling](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j4o4f1f7hzfvsy8ykue8.jpeg)

Leaders should ensure dev teams maintain **high cohesion and low coupling** to improve quality and increase overall productivity.

Architects should ensure components maintain **high cohesion and low coupling** to enhance system maintainability, scalability and reliability.

WHY should you foster high cohesion and low coupling in teams?
🎯 **Better Focus:** Teams with clear, unified goals (high cohesion) are more productive and effective.
💪 **Robust Code:** Expertise and focus lead to higher quality, more reliable software, and easier testing.
🤝 **Fosters Shared Ownership:** Team members are familiar with the codebase and can seamlessly continue work if someone leaves.
🌐 **Adaptability:** Independent, low-coupled teams can respond quickly to new opportunities and challenges.
🔄 **Flexibility:** Reduced interdependencies allow for easy reconfiguration to meet new priorities.
💡 **Innovation:** Autonomy via low coupling fosters creativity and continuous improvement.

If you think about it, **your organization is perfectly designed to produce the results it gets**. So, could it be that by aligning teams and components, both having high cohesion and low coupling, you can achieve higher quality, better maintainability and faster development velocity? 🤔

**Leaders can't do this alone, architects can't do this alone.**

Involving architects in organizational design helps to achieve this. This way, leaders can ensure that both the team structure and the software architecture align with the principles of high cohesion and low coupling, driving value creation, speed and agility. 🚀

What strategies, tools, or methods have you found effective in fostering high cohesion and low coupling in your teams?

My two cents:
1️⃣ **Domain-Driven Design (DDD):** Utilizing DDD principles to structure teams around business domains. This ensures that teams have a deep understanding of the domain they are working in, which enhances cohesion and allows for more effective problem-solving and decision-making.
2️⃣ **Team Topologies:** Applying the Team Topologies framework to define clear team boundaries and interaction patterns. This helps in designing teams that are aligned with the software architecture and business needs, promoting low coupling and high cohesion.