{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/BllfmgtEgYXRkk9rqBkw/nV8pUR1Dfs7FcKplnUi4/xUFEuGbVZ-25.js"],
  "sourcesContent": ["import{jsx as e,jsxs as t}from\"react/jsx-runtime\";import{ComponentPresetsConsumer as r,Link as a}from\"framer\";import{motion as o}from\"framer-motion\";import*as n from\"react\";import i from\"https://framerusercontent.com/modules/pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js\";export const richText=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Ready to \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/writing-test-cases-for-login-page\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"write test cases \"})}),\"that will make your fellow testers swoon? Follow these six steps to create clear, effective, and downright awesome test cases:\"]}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Understand Requirements: \"}),\"Know Your Battlefield Before you start typing, take a moment to really grasp what you're testing. Dive into those requirements documents, user stories, or specifications. Chat with developers or product managers if needed. The better you understand the feature, the more effective your test cases will be. It's like studying the terrain before planning a hike!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Create Clear Titles and Descriptions:\"}),' Set the Stage Your test case title should be like a good newspaper headline \u2013 concise yet informative. For example, \"Verify User Login with Valid Credentials\" tells you exactly what the test is about. Follow it up with a brief description that explains the purpose of the test. Keep it simple and jargon-free!']})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Define Preconditions: \"}),\"Prep Your Testing Ground List out everything that needs to be in place before running your test. This might include having a test account, specific system settings, or certain data in the database. It's like checking your ingredients before starting a recipe. Clear preconditions save time and prevent confusion later.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Write Detailed Test Steps: \"}),'Chart the Course Break down the test into clear, actionable steps. Each step should be specific enough that even someone unfamiliar with the application could follow it. Instead of \"Log in,\" write \"Enter username \\'testuser@example.com\\' in the username field.\" The more precise, the better!']})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Specify Expected Results:\"}),' Define Success For each step (or group of steps), clearly state what should happen if everything goes right. This is your yardstick for pass or fail. Be specific! \"User should be logged in\" is okay, but \"User should be redirected to the dashboard and see a welcome message with their username\" is much better.']})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Review and Refine: \"}),\"Polish Your Gem Once you've written your test case, take a step back and review it. Is every step clear? Have you covered all scenarios? Could someone else pick this up and run with it? Don't be afraid to refine and improve. It's like editing a story \u2013 sometimes a little tweaking can make a big difference!\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"Remember, writing effective test cases is a skill that improves with practice. Don't worry if your first attempts aren't perfect. Keep at it, and soon you'll be crafting test cases that make quality assurance a breeze!\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/e(\"img\",{alt:\"Crafting Stellar Test Cases\",className:\"framer-image\",height:\"540\",src:\"https://framerusercontent.com/images/sgopDA5tBEn2xA40VR3FvWyvHA.jpg\",srcSet:\"https://framerusercontent.com/images/sgopDA5tBEn2xA40VR3FvWyvHA.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/sgopDA5tBEn2xA40VR3FvWyvHA.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/sgopDA5tBEn2xA40VR3FvWyvHA.jpg 1920w\",style:{aspectRatio:\"1920 / 1080\"},width:\"960\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Pro Tip: \"}),\"Try running through your test case as if you were a new team member. If you can follow it easily, you're on the right track!\"]})]});export const richText1=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Want to write test cases that make your QA team cheer? Follow these best practices to create test cases that are not just good, but great:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Be Specific and Concise:\"}),' The Goldilocks Rule Your test cases should be like a perfect bowl of porridge \u2013 not too vague, not too wordy, but just right. Be specific enough that anyone can follow your steps, but concise enough to avoid information overload. Instead of \"Enter a long password,\" try \"Enter a password with at least 8 characters, including one uppercase letter, one number, and one special character.\"']})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Cover Both Positive and Negative Scenarios:\"}),\" Expect the Unexpected Don't just test the happy path! While it's important to verify that things work when users do everything right, also test what happens when they don't. Try invalid inputs, boundary conditions, and error scenarios. Remember, users have a knack for doing the unexpected \u2013 your test cases should be ready for it!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Ensure Traceability to Requirements: \"}),\"Connect the Dots Each test case should link back to a specific requirement or user story. This traceability helps ensure you're testing what matters and makes it easier to update test cases when requirements change. It's like creating a map that connects your tests to the bigger picture of what the software should do.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Make Test Cases Reusable: \"}),'Work Smarter, Not Harder Design your test cases with reusability in mind. Use parameters or variables where possible, so you can easily adapt the test case for different scenarios. For example, instead of hardcoding \"testuser@example.com\" as the username, use a variable like \"[VALID_USERNAME]\". This approach makes your test cases more flexible and easier to maintain.']})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Prioritize Test Cases: \"}),'Focus on What Matters Most Not all test cases are created equal. Prioritize your test cases based on factors like criticality of the feature, frequency of use, and risk of failure. This helps ensure that if time is tight, you\\'re focusing on the most important tests first. You might use labels like \"Critical,\" \"High,\" \"Medium,\" or \"Low\" to categorize your test cases.']})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Bonus Tip: \"}),\"Keep Learning and Adapting The world of software testing is always evolving. Stay curious, keep learning, and be open to new techniques and tools. What works best for one project might not be ideal for another, so be ready to adapt your approach as needed.\"]})]});export const richText2=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Even the best testers can fall into traps when writing test cases. Let's shine a light on these common pitfalls so you can avoid them like a pro:\",/*#__PURE__*/e(\"br\",{}),/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/e(\"h3\",{children:\"1. Writing Vague or Ambiguous Steps: The Clarity Conundrum\"}),/*#__PURE__*/e(\"p\",{children:'The Pitfall: Imagine following a recipe that says \"Add some spices\" without specifying which ones or how much. Frustrating, right? Vague test steps can lead to confusion, inconsistent results, and missed bugs.'}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"strong\",{children:\"How to Avoid It:\"})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Be specific about actions and inputs\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Use clear, actionable language\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Include exact values or data to use\"})})]}),/*#__PURE__*/t(\"p\",{children:['Instead of \"Enter an invalid password\", try \"Enter the password \\'12345\\' (which is less than the required 8 characters)\".',/*#__PURE__*/e(\"br\",{}),/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/e(\"h3\",{children:\"2. Overlooking Edge Cases: The Devil in the Details\"}),/*#__PURE__*/e(\"p\",{children:\"The Pitfall: It's easy to focus on the obvious scenarios and forget about the edge cases - those unusual situations that can reveal hidden bugs. Overlooking these can lead to unexpected issues in production.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"strong\",{children:\"How to Avoid It:\"})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Think like a mischievous user\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Consider boundary values and extreme scenarios\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Test with unexpected inputs or actions\"})})]}),/*#__PURE__*/t(\"p\",{children:[\"For example, don't just test with valid emails. Try emails with special characters, very long addresses, or even emoji!\",/*#__PURE__*/e(\"br\",{}),/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/e(\"h3\",{children:\"3. Creating Overly Complex Test Cases: The Kitchen Sink Syndrome\"}),/*#__PURE__*/e(\"p\",{children:\"The Pitfall: In an attempt to be thorough, it's tempting to cram multiple scenarios into one test case. This can make your tests difficult to execute, debug, and maintain.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"strong\",{children:\"How to Avoid It:\"})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Keep each test case focused on a single objective\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Break complex scenarios into multiple, simpler test cases\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Aim for test cases that can be executed in 5 minutes or less\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Instead of one massive test case covering the entire user registration process, create separate test cases for each step or validation.\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Pro Tip:\"}),\" The KISS Principle (Keep It Simple, Silly) applies to test cases too!\"]}),/*#__PURE__*/e(\"p\",{children:\"Remember, the goal is to create test cases that are clear, effective, and maintainable. By avoiding these common pitfalls, you'll craft test cases that are a joy to execute and a powerful tool for ensuring software quality.\"}),/*#__PURE__*/e(\"p\",{children:\"Stay vigilant, keep refining your approach, and soon you'll be writing test cases that make bugs quake in their boots!\"})]});export const richText3=/*#__PURE__*/e(n.Fragment,{children:/*#__PURE__*/e(\"p\",{children:\"Crafting effective test cases is an essential skill in software testing. By following the steps outlined, adhering to best practices, and avoiding common pitfalls, you'll create test cases that are clear, comprehensive, and powerful tools for ensuring software quality. Remember, the goal is to write test cases that anyone can follow and that cover all necessary scenarios. As you apply these techniques, you'll not only improve your testing process but also contribute to delivering higher-quality software. Keep refining your skills, stay curious, and happy testing! Your well-crafted test cases are the unsung heroes of great software.\"})});export const richText4=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Ever wondered about those quirky symbols sprinkled throughout your keyboard? You know, the ones that aren't letters or numbers but still play a crucial role in our digital lives? Welcome to the fascinating world of special characters!\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters are the unsung heroes of our written language. They're the symbols that add flavor to our texts, bring precision to our codes, and even help keep our online accounts secure. From the humble period to the enigmatic octothorpe (that's the fancy name for the hashtag symbol), these characters are everywhere, silently shaping how we communicate in the digital age.\"}),/*#__PURE__*/e(\"p\",{children:\"But what exactly are special characters? Simply put, they're any symbol that isn't a letter or a number. Think of the comma that helps you catch your breath while reading, or the @ sign that connects your name to your email domain. These little guys are the spice in our linguistic soup, adding meaning and nuance to our written words.\"}),/*#__PURE__*/e(\"p\",{children:\"The story of special characters is as old as writing itself. Ancient Greek writers were among the first to use punctuation marks, helping readers separate one thought from another. As language evolved, so did our need for more sophisticated ways to express ideas. Some characters, like the ampersand (&), even have roots in ancient ligatures \u2013 combinations of letters that over time morphed into the symbols we know today.\"}),/*#__PURE__*/e(\"p\",{children:\"In our modern, digital world, special characters have taken on new importance. They're not just for punctuating sentences anymore. These versatile symbols now play crucial roles in programming languages, web addresses, and even in creating strong passwords to keep our online lives secure.\"}),/*#__PURE__*/e(\"p\",{children:\"So, buckle up as we dive into the world of special characters. Whether you're a curious reader, a budding programmer, or someone who just wants to spice up their tweets, this guide will help you unlock the power of these small but mighty symbols. Let's explore how these characters shape our digital communication and discover some tricks to use them like a pro!\"})]});export const richText5=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/e(\"img\",{alt:\"The Special Character Family Tree\",className:\"framer-image\",height:\"384\",src:\"https://framerusercontent.com/images/wCbfziLSYfVrvJBtVKxPJqzgr2Y.png\",srcSet:\"https://framerusercontent.com/images/wCbfziLSYfVrvJBtVKxPJqzgr2Y.png?scale-down-to=512 512w,https://framerusercontent.com/images/wCbfziLSYfVrvJBtVKxPJqzgr2Y.png?scale-down-to=1024 1024w,https://framerusercontent.com/images/wCbfziLSYfVrvJBtVKxPJqzgr2Y.png 1344w\",style:{aspectRatio:\"1344 / 768\"},width:\"672\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/e(\"p\",{children:\"Ever looked at your keyboard and wondered about all those symbols that aren't letters or numbers? Well, those are special characters, and they're more important than you might think!\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters are the unsung heroes of our digital world. They're the symbols that add meaning, structure, and sometimes a bit of pizzazz to our writing and coding. But what exactly counts as a special character?\"}),/*#__PURE__*/e(\"p\",{children:\"Simply put, a special character is any symbol that isn't an alphabet or a number. This includes everything from the period at the end of this sentence to the @ in your email address. They're the seasoning in our alphabet soup, if you will!\"}),/*#__PURE__*/e(\"p\",{children:\"Let's break down the main categories of special characters:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Punctuation Marks\"}),\": These are your everyday writing buddies. Think periods, commas, question marks, and exclamation points. They help us structure sentences and convey tone in writing. Without them, reading would be a real challenge!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Symbols\"}),\": This group includes characters like @, #, $, %, and &. They often have special meanings in different contexts. For example, # isn't just a number sign anymore - it's the mighty hashtag on social media!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"ASCII Control Characters\"}),\": These are the invisible heroes of computing. While you can't see them, they control how text is processed. For instance, the 'Enter' key you press to start a new line? That's actually inserting a special character!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Formatting Characters\"}),\": These sneaky characters affect how text is displayed. The most common one you use all the time is the space bar - yep, that's a special character too!\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"Now that we know what special characters are, let's look at some common ones you'll encounter in your digital adventures.\"})]});export const richText6=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Here's a handy table of special characters you're likely to bump into regularly. We've included their names, common uses, and how to type them on a standard keyboard. Don't worry about memorizing all of these \u2013 just use this as a reference when you need it!\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/e(\"img\",{alt:\"Common Special Characters and Their Uses\",className:\"framer-image\",height:\"633\",src:\"https://framerusercontent.com/images/LXkfGEtgDNK4FWdJFKwOHMVuBM.png\",srcSet:\"https://framerusercontent.com/images/LXkfGEtgDNK4FWdJFKwOHMVuBM.png?scale-down-to=512 512w,https://framerusercontent.com/images/LXkfGEtgDNK4FWdJFKwOHMVuBM.png?scale-down-to=1024 1024w,https://framerusercontent.com/images/LXkfGEtgDNK4FWdJFKwOHMVuBM.png 2048w\",style:{aspectRatio:\"2048 / 1266\"},width:\"1024\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/e(\"p\",{children:\"Each of these characters has its own unique role in our digital world. From helping us express emotions in text messages to keeping our code organized, special characters are the secret sauce that makes our digital communication work smoothly.\"}),/*#__PURE__*/e(\"p\",{children:\"Remember, you don't need to memorize all of these. The more you use them, the more familiar they'll become. And who knows? You might even find yourself becoming a special character enthusiast!\"})]});export const richText7=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Special characters are like chameleons - they change their role depending on where you use them. Let's explore how these versatile symbols work in various contexts.\"}),/*#__PURE__*/e(\"h3\",{children:\"4.1 In Writing and Grammar\"}),/*#__PURE__*/e(\"p\",{children:\"In the world of writing, special characters are the silent conductors of our language orchestra. They help us convey meaning, tone, and structure in our writing.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Punctuation Marks\"}),\": These are the traffic signals of writing. A period (.) tells you to stop, a comma (,) says slow down, and a semicolon (;) is like a yield sign connecting related ideas. The exclamation point (!) shouts excitement, while the question mark (?) raises curiosity.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Quotation Marks\"}),\": These little curved lines (\\\"\\\") are like earbuds for your eyes, letting you know when someone's speaking or when you're quoting something directly. In some countries, they look like this: \\xab\\xbb.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Apostrophes\"}),\": This curvy comma in the sky (') is a multitasker. It shows possession (Sarah's book) and creates contractions (don't, it's). Just don't confuse it with single quotation marks!\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"4.2 In Mathematics\"}),/*#__PURE__*/e(\"p\",{children:\"Math might seem like a world of numbers, but special characters play a starring role too.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Mathematical Operators\"}),\": The fab four of math operations are +, -, \\xd7, and \\xf7. But don't forget about \u2260 (not equal to), \u2248 (approximately equal to), and \u221E (infinity).\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Exponents and Factorials\"}),\": The caret (^) often represents exponents in typing (2^3 = 8), while superscript is used in formal writing (2\\xb3 = 8). The exclamation mark (!) takes on a new life in math as the factorial operator (5! = 5 \\xd7 4 \\xd7 3 \\xd7 2 \\xd7 1 = 120).\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"4.3 In Programming and Coding\"}),/*#__PURE__*/e(\"p\",{children:\"In the coding world, special characters are like secret handshakes - they have special meanings that tell the computer what to do.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Comments\"}),\": Different languages use different symbols for comments. // or # often mark single-line comments, while /* and */ enclose multi-line comments.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"String Validation\"}),\": Quotation marks (\\\" \\\") or apostrophes (' ') are used to define strings. The backslash () is used as an escape character.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Logical Operators\"}),\": Symbols like &&, ||, and ! represent AND, OR, and NOT in many programming languages. The == checks for equality, while = assigns values.\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"4.4 In Web and Email\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters are the building blocks of our online identities and web navigation.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"URL Components\"}),\": The colon and forward slashes (://) separate the protocol from the domain. The dot (.) separates domain levels, while the question mark (?) introduces query parameters.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Email Addresses\"}),\": The at sign (@) is the star here, connecting the username to the domain name. It's so crucial that it was added to the Morse Code in 2004!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"HTML and XML Tags\"}),': Angle brackets (< >) are used to enclose tags. The forward slash (/) is used in closing tags. Attributes within tags often use quotation marks (\" \").']})})]}),/*#__PURE__*/e(\"h3\",{children:\"4.5 In Social Media\"}),/*#__PURE__*/e(\"p\",{children:\"Social media has given new life to some special characters, turning them into powerful tools for organization and connection.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Hashtags\"}),\": The pound sign (#) transformed into the hashtag, becoming a way to categorize posts and join conversations. #SpecialCharactersRule!\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Mentions\"}),\": The at sign (@) found a new job linking to user profiles. It's how we tag friends, respond to posts, and sometimes, catch the attention of our favorite celebrities.\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"From writing a novel to coding an app, or just sending a tweet, special characters are always there, helping us communicate more effectively. They might be small, but they pack a mighty punch in conveying meaning across different contexts.\"})]});export const richText8=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Ever found yourself needing a special character but unsure how to type it? Don't worry, we've got you covered!\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Using a standard keyboard\"}),\": Most common special characters are right there on your keyboard. They're often accessed by holding down the Shift key and pressing a number or punctuation key. For example, Shift + 1 gives you an exclamation mark (!).\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Alt codes for additional characters\"}),\": On Windows, you can use Alt codes to type special characters. Hold down the Alt key and type a specific number on the numeric keypad. For instance, Alt + 0169 gives you the copyright symbol (\\xa9).\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Special character software and tools\"}),\": For more obscure characters, you might want to use character map tools. Windows has a built-in Character Map, while Mac users can use the Character Viewer. There are also third-party tools like PopChar or BabelMap that can make inserting special characters a breeze.\"]}),/*#__PURE__*/e(\"h3\",{children:\"Special Characters in Passwords\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters aren't just for writing - they're crucial for keeping your online accounts safe!\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Importance in creating strong passwords\"}),\": Including special characters in your passwords significantly increases their strength. They add complexity, making your passwords harder for hackers to crack.\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Best practices and common pitfalls\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Do: Use a mix of uppercase and lowercase letters, numbers, and special characters.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:'Don\\'t: Use common substitutions like \"@\" for \"a\" or \"$\" for \"s\" - hackers are onto these tricks!'})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Do: Make your password long - aim for at least 12 characters.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Don't: Use personal information or common words.\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Remember, a strong password is like a good joke - hard to guess, but easy for you to remember!\"}),/*#__PURE__*/e(\"h3\",{children:\"Special Characters Across Different Languages and Cultures\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters aren't one-size-fits-all - they vary across languages and cultures.\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Accent marks\"}),': Many languages use accent marks to change the pronunciation or meaning of words. For example, in Spanish, \"a\\xf1o\" (year) and \"ano\" (anus) mean very different things!']}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Non-Latin alphabets\"}),\": Languages that don't use the Latin alphabet often have their own special characters. For instance, the Japanese yen symbol (\\xa5) or the Russian letter \u0436 (zh).\"]}),/*#__PURE__*/e(\"h3\",{children:\"Troubleshooting Common Issues with Special Characters\"}),/*#__PURE__*/e(\"p\",{children:\"Sometimes, special characters can cause headaches. Here's how to deal with common issues:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Encoding problems\"}),\": If you see gibberish instead of special characters, it's likely an encoding issue. Make sure you're using the correct character encoding (like UTF-8) when saving or viewing files.\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Compatibility issues across platforms\"}),\": What looks fine on your device might look different on another. When in doubt, stick to widely supported characters or use HTML entities in web content.\"]}),/*#__PURE__*/e(\"h3\",{children:\"Future of Special Characters\"}),/*#__PURE__*/e(\"p\",{children:\"Special characters continue to evolve with technology. Here's what's on the horizon:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Emerging uses in technology\"}),\": Emojis are the new kids on the special character block, adding emotion to our digital communication. We're also seeing new symbols emerge for cryptocurrencies and tech concepts.\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Unicode expansion\"}),\": The Unicode Consortium regularly adds new characters to accommodate evolving language needs and new symbols. As of 2021, there are over 140,000 characters in Unicode!\"]}),/*#__PURE__*/e(\"p\",{children:\"Special characters may be small, but they're mighty important in our digital world. From making our passwords stronger to expressing our thoughts more precisely, these little symbols pack a big punch.\"})]});export const richText9=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"From punctuation marks that guide our reading to symbols that secure our online accounts, special characters are the unsung heroes of our digital world. They add nuance to our writing, precision to our code, and even help bridge language barriers. As we've explored, these tiny symbols play big roles across various contexts - from everyday writing to complex programming.\"}),/*#__PURE__*/e(\"p\",{children:\"So, the next time you type an @, #, or \\xf1, remember: you're not just using a character, you're tapping into a rich history of communication. Embrace these special characters and watch how they enhance your digital expression. After all, in the world of text, sometimes the smallest symbols speak the loudest!\"})]});export const richText10=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Ever feel like your software development process is stuck in slow motion? You're not alone. In today's fast-paced tech world, getting your code from your laptop to your users quickly and smoothly is crucial. That's where CI/CD comes in, and boy, is it a game-changer!\"}),/*#__PURE__*/e(\"p\",{children:\"CI/CD, short for Continuous Integration and Continuous Delivery/Deployment, is like having a super-efficient robot on your team. It automates the boring stuff \u2013 building, testing, and deploying your code \u2013 so you can focus on the fun part: creating awesome features for your users.\"}),/*#__PURE__*/t(\"p\",{children:[\"But here's the kicker: \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/understanding-ci-cd-tools-for-devops\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"choosing the right CI/CD tool\"})}),\" can make or break your development workflow. It's like picking the perfect pair of shoes for a marathon \u2013 get it right, and you'll breeze through your project; get it wrong, and you'll be limping to the finish line.\"]}),/*#__PURE__*/e(\"p\",{children:\"Two heavy hitters in the CI/CD world are CircleCI and Jenkins. They're both great, but they've got their own quirks and perks. Picking between them can feel like choosing between pizza and tacos \u2013 they're both delicious, but which one's right for you?\"}),/*#__PURE__*/e(\"p\",{children:\"That's why we're here. We're going to break down the key differences between CircleCI and Jenkins, no tech jargon, no fluff. By the end of this post, you'll have a clear picture of which tool might be the perfect fit for your team's needs.\"}),/*#__PURE__*/t(\"p\",{children:[\"So, buckle up! We're about to dive into the \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/understanding-ci-cd-tools-for-devops\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"world of CI/CD tools\"})}),\" and help you make a choice that could supercharge your development process. Ready to find your CI/CD soulmate? Let's go!\"]})]});export const richText11=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Alright, let's break down this CI/CD thing. Think of it as three best friends working together to make your life easier: Continuous Integration, Continuous Delivery, and Continuous Deployment. They're like the Three Musketeers of the coding world \u2013 all for one and one for all!\"}),/*#__PURE__*/e(\"h3\",{children:\"Continuous Integration (CI): The Code Mixer\"}),/*#__PURE__*/e(\"p\",{children:\"Imagine you're making a giant smoothie (your software), and everyone on your team is adding different ingredients (code changes). Continuous Integration is like having a super-smart blender that mixes everything together smoothly, multiple times a day.\"}),/*#__PURE__*/e(\"p\",{children:\"Here's what CI does:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Automatically grabs all the new code changes\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Blends them together (merges the code)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Checks if everything tastes good (runs automated tests)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Lets you know if something's off (alerts you to any issues)\"})})]}),/*#__PURE__*/e(\"p\",{children:\"The best part? This happens frequently, often multiple times a day. So, you catch any weird ingredient combinations (bugs) before they ruin the whole smoothie.\"}),/*#__PURE__*/e(\"h3\",{children:\"Continuous Delivery (CD): The Taste Tester\"}),/*#__PURE__*/e(\"p\",{children:\"Continuous Delivery is like having a professional taste tester for your smoothie. Once CI has mixed everything up, CD steps in to make sure it's ready to serve.\"}),/*#__PURE__*/e(\"p\",{children:\"CD's job:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Takes the blended smoothie (integrated code)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Runs it through more thorough taste tests (additional automated tests)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Makes sure it's packaged nicely (prepares for deployment)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Places it on the counter, ready to be served (stages for release)\"})})]}),/*#__PURE__*/e(\"p\",{children:\"With CD, your software is always in a state where you could release it if you wanted to. It's like having a gourmet meal ready to go at a moment's notice.\"}),/*#__PURE__*/e(\"h3\",{children:\"Continuous Deployment: The Express Waiter\"}),/*#__PURE__*/e(\"p\",{children:\"If Continuous Delivery is about being ready to serve, Continuous Deployment is about actually getting that smoothie to the customer ASAP.\"}),/*#__PURE__*/e(\"p\",{children:\"Here's what it does:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Grabs that ready-to-go smoothie\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Automatically serves it to the customer (deploys to production)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Does this for every new batch that passes all the tests\"})})]}),/*#__PURE__*/e(\"p\",{children:'With Continuous Deployment, new features and fixes get to your users faster than you can say \"brain freeze\"!'}),/*#__PURE__*/e(\"p\",{children:\"Remember, not every team uses Continuous Deployment. Some prefer to have a human give the final thumbs up before serving (deploying), and that's cool too.\"}),/*#__PURE__*/e(\"p\",{children:\"By using these three amigos \u2013 CI, CD, and Continuous Deployment \u2013 you're setting up a smooth, efficient pipeline that takes your code from your fingertips to your users with minimal fuss. It's like having a well-oiled machine that turns your brilliant ideas into real, working software at lightning speed.\"}),/*#__PURE__*/e(\"p\",{children:\"Now that we've got the basics down, let's dive into how CircleCI and Jenkins handle this CI/CD magic in their own unique ways!\"})]});export const richText12=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Imagine having a super-smart robot assistant that lives in the cloud and helps you build, test, and deploy your code. That's \",/*#__PURE__*/e(a,{href:\"https://circleci.com/\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"CircleCI\"})}),\" in a nutshell!\"]}),/*#__PURE__*/e(\"h3\",{children:\"What's CircleCI All About?\"}),/*#__PURE__*/e(\"p\",{children:\"CircleCI is like the cool new kid on the CI/CD block. It's a cloud-based platform that automates your software development process, making it faster and more reliable. Think of it as your personal code butler, always ready to serve up fresh builds and deployments.\"}),/*#__PURE__*/e(\"h3\",{children:\"Key Features That Make CircleCI Shine:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Cloud-Native:\"}),\" No need for your own servers \u2013 CircleCI lives in the cloud, so you can focus on coding, not server maintenance.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Easy Setup:\"}),\" Getting started is as simple as connecting your GitHub or Bitbucket account.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Parallel Processing:\"}),\" CircleCI can run multiple tasks at once, like a multitasking ninja.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Docker Support:\"}),\" It plays nice with Docker, making it easier to build and test in consistent environments.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Flexible Pricing:\"}),\" From free plans for small projects to enterprise solutions, there's something for everyone.\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"Why Developers Love CircleCI:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Speed Demon:\"}),\" CircleCI is known for its fast build times, getting your code from commit to deploy in record time.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"User-Friendly Interface:\"}),\" Its modern, intuitive interface makes it easy to see what's going on with your builds at a glance.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Language Agnostic:\"}),\" Whether you're coding in Python, JavaScript, or something more exotic, CircleCI has got you covered.\"]})})]})]});export const richText13=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Now, let's talk about Jenkins \u2013 the wise old sage of the CI/CD world. It's like that reliable old truck that's been in the family for years: it might not be the flashiest, but it gets the job done, and then some.\"}),/*#__PURE__*/e(\"h3\",{children:\"What's Jenkins All About?\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(a,{href:\"https://www.jenkins.io/\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Jenkins\"})}),\" is an open-source automation server that's been around since 2011. It's like a Swiss Army knife for software development \u2013 incredibly versatile and can be customized to do just about anything in your CI/CD pipeline.\"]}),/*#__PURE__*/e(\"h3\",{children:\"Key Features That Make Jenkins a Powerhouse:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Open-Source:\"}),\" Free to use and backed by a massive community of contributors.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Extensibility:\"}),\" With thousands of plugins available, Jenkins can be customized to fit almost any workflow.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Self-Hosted:\"}),\" You run Jenkins on your own servers, giving you complete control over your environment.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Pipeline as Code:\"}),\" Define your entire CI/CD pipeline in a Jenkinsfile, making it easy to version and manage.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Distributed Builds:\"}),\" Jenkins can distribute work across multiple machines for faster builds.\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"Why Jenkins Has a Loyal Following:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Flexibility King:\"}),\" If you can dream it, Jenkins can probably do it. Its customization options are virtually limitless.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Community Support:\"}),\" With a huge user base, you're never far from help or a solution to a problem.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Cost-Effective:\"}),\" Being open-source, Jenkins can be a budget-friendly option, especially for larger teams.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Integration Champion:\"}),\" Jenkins plays well with almost every tool and service out there, making it a great centerpiece for your DevOps toolchain.\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"Both CircleCI and Jenkins are powerful tools that can supercharge your development process. CircleCI offers a sleek, cloud-based experience that's quick to set up and easy to use. Jenkins, on the other hand, provides unparalleled flexibility and control for those willing to put in the setup time.\"})]});export const richText14=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Alright, folks! It's time for the main event. We're putting CircleCI and Jenkins head-to-head in eight crucial categories. Let's see how these CI/CD heavyweights stack up!\"}),/*#__PURE__*/e(\"h3\",{children:\"1. Server Requirements\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": No server? No problem! CircleCI is cloud-based, so you can kiss server maintenance goodbye.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Hope you like servers, because Jenkins needs its own. You'll be in charge of hosting and maintaining it.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": CircleCI (if you want to avoid server headaches)\"]}),/*#__PURE__*/e(\"h3\",{children:\"2. Build Configuration\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Configuration is a breeze with a single YAML file (circle.yml). It's like writing a simple recipe for your builds.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Uses a Jenkinsfile for configuration. It's more complex but gives you more control \u2013 think of it as writing a detailed cookbook.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": Tie (CircleCI for simplicity, Jenkins for flexibility)\"]}),/*#__PURE__*/e(\"h3\",{children:\"3. User Interface\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Sleek, modern, and user-friendly. It's like using a brand-new smartphone \u2013 intuitive and easy on the eyes.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Functional but dated. It's more like using an old flip phone \u2013 it gets the job done, but it's not winning any beauty contests.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": CircleCI\"]}),/*#__PURE__*/e(\"h3\",{children:\"4. Parallel Processing\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Built-in support for running tasks in parallel. It's like having multiple chefs working on different dishes simultaneously.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Can do parallel processing, but it's not as straightforward. It's possible, but you might need to juggle a bit to make it work smoothly.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": CircleCI\"]}),/*#__PURE__*/e(\"h3\",{children:\"5. Data Protection\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Offers encryption options, but most data is accessible to team members. It's like a shared team notebook.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Provides robust encryption through plugins. It's more like a vault where you can lock away sensitive information.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": Jenkins\"]}),/*#__PURE__*/e(\"h3\",{children:\"6. Docker Workflow\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Native Docker support. Using Docker with CircleCI is as easy as pie.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": Supports Docker, but you'll need to set it up yourself. It's doable, but requires a bit more elbow grease.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": CircleCI\"]}),/*#__PURE__*/e(\"h3\",{children:\"7. Pricing\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Offers a free plan and flexible paid options. It's like a buffet \u2013 take what you need, pay for what you use.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": It's free! But remember, you're paying with your time for setup and maintenance. It's like getting a free car, but you have to assemble it yourself.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": Tie (depends on your budget and needs)\"]}),/*#__PURE__*/e(\"h3\",{children:\"8. Popularity\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI\"}),\": Growing fast and popular among startups and modern dev teams. It's the cool new kid everyone wants to hang out with.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins\"}),\": The old reliable with a massive user base. It's like that popular kid who's been around forever and knows everyone.\"]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Winner\"}),\": Tie (Jenkins wins on sheer numbers, CircleCI on trendy appeal)\"]}),/*#__PURE__*/e(\"h3\",{children:\"And the Overall Winner Is...\"}),/*#__PURE__*/e(\"p\",{children:\"Plot twist \u2013 there isn't one! The best choice between CircleCI and Jenkins depends entirely on your team's needs, skills, and preferences.\"}),/*#__PURE__*/e(\"p\",{children:\"CircleCI is great if you want a modern, cloud-based solution that's easy to set up and use. It's perfect for teams who want to focus on coding rather than infrastructure.\"}),/*#__PURE__*/e(\"p\",{children:\"Jenkins shines if you need maximum flexibility and control, and have the resources to manage your own servers. It's ideal for teams with complex, custom needs who don't mind a bit of extra setup work.\"})]});export const richText15=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Let's dive into how these two \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/ci-cd-testing-importance\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"CI/CD titans handle automated testing\"})}),\". After all, catching bugs early is like finding out there's spinach in your teeth before a big date \u2013 a little embarrassing, but way better than finding out later!\"]}),/*#__PURE__*/e(\"h3\",{children:\"CircleCI's Testing Approach: The Cool Automated Barista\"}),/*#__PURE__*/e(\"p\",{children:\"Imagine CircleCI as a hip, high-tech coffee shop where robots make your perfect brew:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Pre-installed Dependencies\"}),\": CircleCI comes with popular testing tools pre-installed. It's like walking into a coffee shop where your favorite blend is always ready.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Automated Test Discovery\"}),\": CircleCI automatically detects and runs your tests. It's as if the robot barista knows exactly what you want before you even order.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Parallel Testing\"}),\": CircleCI can run multiple tests simultaneously. Picture several robot baristas working on different orders at once.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Custom Test Environments\"}),\": You can easily set up specific environments for your tests. It's like being able to adjust the ambiance of the coffee shop for each cup you brew.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Detailed Test Reports\"}),\": CircleCI provides comprehensive test results. Imagine getting a detailed flavor profile with each sip of your coffee.\"]})})]}),/*#__PURE__*/e(\"h3\",{children:\"Jenkins' Testing Approach: The Customizable Coffee Laboratory\"}),/*#__PURE__*/e(\"p\",{children:\"Think of Jenkins as a fully equipped coffee lab where you can experiment to your heart's content:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Plugin-based Testing\"}),\": Jenkins relies on plugins for testing. It's like having a toolbox full of different coffee-making gadgets \u2013 you pick the ones you need.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Flexibility in Test Execution\"}),\": You have complete control over how tests are run. It's akin to being able to adjust every aspect of the coffee-making process.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Support for Any Testing Framework\"}),\": Jenkins can work with virtually any testing tool. Imagine being able to use any method to brew your coffee, from French press to cold brew.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Distributed Testing\"}),\": Jenkins can distribute tests across multiple machines. Picture having several coffee labs working on different aspects of your perfect brew.\"]})})]})]});export const richText16=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Alright, so you've seen what CircleCI and Jenkins bring to the table. But how do you choose? Let's break it down:\"}),/*#__PURE__*/e(\"h3\",{children:\"Factors to Consider:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Team Size and Expertise\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"CircleCI is great for smaller teams or those new to CI/CD.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Jenkins shines with larger teams that have DevOps expertise.\"})})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Project Complexity\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"CircleCI works well for straightforward projects.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Jenkins is better for complex, highly customized workflows.\"})})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Infrastructure Preferences\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"CircleCI if you prefer cloud-based, low-maintenance solutions.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Jenkins if you want complete control over your infrastructure.\"})})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Budget\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"CircleCI has a free tier and then pay-as-you-go pricing.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Jenkins is free but requires investment in servers and maintenance.\"})})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Speed of Setup\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"CircleCI offers quick setup and faster time-to-first-build.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Jenkins requires more initial setup but offers more control.\"})})]})]})]}),/*#__PURE__*/e(\"h3\",{children:\"Use Cases for Each Tool:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"CircleCI Shines When You Need\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Rapid setup for new projects\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Built-in support for Docker and cloud deployments\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Easy scalability without infrastructure headaches\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"A modern, user-friendly interface\"})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Perfect for\"}),\": Startups, small to medium-sized teams, cloud-native projects.\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Jenkins Excels When You Want\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Maximum customization and flexibility\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"To leverage a vast plugin ecosystem\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Complete control over your CI/CD environment\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"To integrate with a wide range of tools and technologies\"})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Ideal for\"}),\": Large enterprises, teams with specific compliance needs, projects requiring unique workflows.\"]}),/*#__PURE__*/e(\"p\",{children:\"Remember, there's no one-size-fits-all in the world of CI/CD. The best tool is the one that fits your team's needs, skills, and workflows. Whether you choose the sleek, cloud-based CircleCI or the highly customizable Jenkins, you're taking a big step towards smoother, more efficient development.\"})]});export const richText17=/*#__PURE__*/e(n.Fragment,{children:/*#__PURE__*/e(\"p\",{children:\"We've journeyed through the lands of CircleCI and Jenkins, exploring their features, strengths, and ideal use cases. Remember, there's no one-size-fits-all solution in the CI/CD world. CircleCI offers a sleek, cloud-based experience perfect for teams wanting a quick setup and minimal maintenance. Jenkins provides unparalleled flexibility and control for those ready to roll up their sleeves. Your best choice depends on your team's size, expertise, project complexity, and infrastructure preferences. Whichever tool you choose, you're on your way to faster, more efficient development.\"})});export const richText18=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Ever wondered how top-notch software companies consistently deliver bug-free products? The secret lies in their test management tools. These unsung heroes of the software world are revolutionizing how teams handle quality assurance. Let's dive into why they're so crucial and take a quick look at two popular options: \",/*#__PURE__*/e(\"strong\",{children:\"Practitest and Zephyr\"}),\".\"]}),/*#__PURE__*/e(\"h3\",{children:\"Why Test Management Tools Matter\"}),/*#__PURE__*/t(\"p\",{children:[\"Imagine trying to juggle hundreds of test cases, track bugs, and keep your entire team in the loop \u2013 all while racing against tight deadlines. Sounds like a recipe for chaos, right? That's where \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-data-management-strategy\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"test management\"})}),\" tools swoop in to save the day. They're like a Swiss Army knife for your QA process, helping you:\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Organize and run tests more efficiently\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Spot and squash bugs faster\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Keep everyone on the same page\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Make data-driven decisions to improve your software\"})})]}),/*#__PURE__*/e(\"p\",{children:\"In short, they're the backbone of a smooth, effective testing process that leads to happier customers and fewer headaches for your team.\"})]});export const richText19=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"In the world of test management, Practitest and Zephyr are two names that often pop up. Let's get acquainted:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Practitest\"}),\": This cloud-based tool is all about bringing your testing data together in one place. It's like a central hub for your QA efforts, helping teams collaborate better and make sense of all that testing data.\"]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Zephyr\"}),\": A close friend of JIRA users, Zephyr offers a range of solutions to fit different team sizes and needs. It's designed to play nice with Agile and DevOps workflows, making it a hit with teams who live and breathe those methodologies.\"]}),/*#__PURE__*/e(\"p\",{children:\"Both tools aim to make your testing life easier, but they each have their own unique flavors. Stick around as we dig deeper into what makes each one tick, and help you figure out which might be the better fit for your team's needs.\"})]});export const richText20=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Think of Practitest as the Swiss Army knife of test management. It's designed to be your one-stop shop for all things testing, helping you keep everything organized and running smoothly.\"}),/*#__PURE__*/e(\"h3\",{children:\"Key Features:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Test Library: This is where the magic happens. Create, import, and optimize your test cases all in one place. It's like a well-organized bookshelf for all your testing needs.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"AI-Powered Reporting: Practitest uses some smart tech to give you insights that actually matter. No more drowning in useless data!\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Test Automation Management: Got a mix of manual and automated tests? Practitest helps you bring it all together, giving you a bird's-eye view of your entire testing landscape.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Exploratory Testing Support: For those times when you need to think outside the box, Practitest has got your back with tools for more freestyle testing sessions.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"JIRA Integration: If you're a JIRA fan, you'll love how seamlessly Practitest plays with it. It's like they were made for each other!\"})})]}),/*#__PURE__*/e(\"h3\",{children:\"The Good Stuff (Pros):\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Unified Platform: Say goodbye to juggling multiple tools. Practitest brings everything under one roof.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Customizable Dashboards: Tailor your view to focus on what matters most to you and your team.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Reusability: Save time by easily rerunning old test cases or tweaking them for new scenarios.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Integrations Galore: Plays nice with a bunch of other tools, making it easier to fit into your existing workflow.\"})})]}),/*#__PURE__*/e(\"h3\",{children:\"The Not-So-Great Stuff (Cons):\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Learning Curve: New users might need some time to get the hang of all the features.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Cloud-Only: If you're looking for an on-premise solution, you're out of luck here.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Automation Dependency: While it manages automated tests well, you'll need to bring your own automation tools to the party.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Scalability Concerns: Some users have reported hiccups when dealing with larger test repositories.\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Practitest packs a punch with its feature set, aiming to be the central hub for all your testing needs. It's especially great for teams looking to unify their testing processes and get better insights from their data. However, it might take a bit of time to master, and larger teams should consider its scalability for their needs.\"}),/*#__PURE__*/e(\"p\",{children:\"Remember, the best tool is the one that fits YOUR team's unique needs. So, keep these pros and cons in mind as we continue our journey through the world of test management tools!\"})]});export const richText21=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Zephyr isn't just one tool \u2013 it's a family of solutions designed to cater to different team sizes and needs. Let's break it down:\"}),/*#__PURE__*/e(\"h3\",{children:\"Key Features:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Zephyr Squad: \"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Perfect for smaller Agile teams\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Lives right inside JIRA\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Create and run tests without leaving your JIRA environment\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Zephyr Scale:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Handles larger test libraries across multiple JIRA projects\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Customizable fields and statuses\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Improves test reusability with parameters and shared steps\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Zephyr Enterprise:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Built for big organizations with complex needs\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Supports over 10,000 concurrent users\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Can be deployed on cloud, on-premise, or in data centers\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Zephyr for JIRA:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Turns test cases into JIRA tickets\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Offers test cycles and detailed analytics\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Seamless JIRA integration (obviously!)\"})})]})]})]}),/*#__PURE__*/e(\"h3\",{children:\"The Good Stuff (Pros):\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"JIRA Integration: If your team lives and breathes JIRA, Zephyr feels right at home.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Flexibility: With different versions, there's likely a Zephyr flavor that fits your team size and needs.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Agile-Friendly: \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/agile-testing-methodology-importance-best-practices-and-challenges\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Designed with Agile\"})}),\" and DevOps methodologies in mind.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Scalability: From small teams to enterprise-level organizations, Zephyr's got you covered.\"})})]}),/*#__PURE__*/e(\"h3\",{children:\"The Not-So-Great Stuff (Cons):\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"JIRA Dependency: If you're not a JIRA user, you're missing out on a lot of Zephyr's value.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Limited Stand-Alone Capabilities: Lacks robust requirements and issues management outside of JIRA.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Performance Issues: Some users report slowdowns with larger test repositories.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"No Exploratory Testing Support: If you need tools for more freestyle testing, you might feel left out.\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Zephyr shines brightest when it's paired with JIRA, offering a range of solutions to fit different team sizes and needs. It's particularly appealing for organizations already invested in the Atlassian ecosystem. However, its heavy reliance on JIRA might be a drawback for teams using other project management tools.\"}),/*#__PURE__*/e(\"p\",{children:\"As with any tool, the key is to evaluate Zephyr based on your specific needs. Does your team heavily use JIRA? Do you need a solution that can scale from small teams to enterprise-level? These are the questions to keep in mind as we move forward in our comparison.\"})]});export const richText22=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Let's put Practitest and Zephyr in the ring and see how they measure up against each other. This head-to-head comparison will help you get a clearer picture of which tool might be the better fit for your team.\"}),/*#__PURE__*/e(\"h3\",{children:\"Features:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Practitest\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"All-in-one platform with test management, automation management, and reporting\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/ai-powered-testing-tech-leader-guide-for-qa-efficiency\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"AI-powered insights\"})}),\" and Test Value Score\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Strong support for \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/exploratory-testing-software-best-practices\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"exploratory and session-based testing\"})})]})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Zephyr\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Different versions for various team sizes (Squad, Scale, Enterprise)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Deep integration with JIRA for seamless workflow\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Robust \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-data-management-strategy\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"test case management\"})}),\" and execution tracking\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"Winner: It's a tie. Both offer strong feature sets, but they shine in different areas. Practitest is more versatile, while Zephyr excels in JIRA-centric environments.\"}),/*#__PURE__*/e(\"h3\",{children:\"Integration Capabilities:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Practitest\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Wide range of integrations including Selenium, Azure DevOps, JUnit, and more\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"REST API for custom integrations with automation tools\"})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Zephyr\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Primarily focused on Atlassian ecosystem (JIRA, Confluence)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Some integrations with CI tools like Jenkins\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Winner: Practitest. It offers a broader range of out-of-the-box integrations, making it more flexible for diverse tech stacks.\"}),/*#__PURE__*/e(\"h3\",{children:\"User Experience:\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"strong\",{children:\"Practitest:\"})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Clean, intuitive interface with drag-and-drop functionality\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Customizable dashboards for personalized views\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Some users report a learning curve for new adopters\"})})]}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Zephyr\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Familiar interface for JIRA users\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Different UIs across versions (Squad, Scale, Enterprise)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Some users report performance issues with large test repositories\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Winner: Practitest, by a narrow margin. Its consistent, customizable interface gives it a slight edge, though Zephyr's JIRA-like UI is a plus for Atlassian users.\"}),/*#__PURE__*/e(\"h3\",{children:\"Pricing Structure:\"}),/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Practitest\"}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Usage-based pricing\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Two main plans: Teams and Corporate\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"14-day free trial available\"})})]}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"strong\",{children:\"Zephyr:\"})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"User-based pricing\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Different pricing for each version (Squad, Scale, Enterprise)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Pricing tied to JIRA licensing in some cases\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Winner: It depends. Practitest's usage-based model might be more cost-effective for smaller teams or those with fluctuating usage. Zephyr's pricing is more straightforward but can get expensive for larger teams.\"}),/*#__PURE__*/e(\"p\",{children:\"The Verdict: There's no clear-cut winner here \u2013 it really depends on your team's specific needs:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"If you're heavily invested in the JIRA ecosystem and want seamless integration, Zephyr is your go-to choice.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"For teams seeking a versatile, all-in-one solution with broad integration capabilities, Practitest takes the cake.\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Remember, the best tool is the one that fits your workflow, budget, and team culture. Don't be afraid to take advantage of free trials to get a hands-on feel for each tool before making your decision.\"})]});export const richText23=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Steep Learning Curve:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Both Practitest and Zephyr can be overwhelming for new users.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Teams might need dedicated time for training and adaptation.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Performance Issues with Large Datasets:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Users of both tools report slowdowns when dealing with extensive test repositories.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"This can be a significant hurdle for growing teams or complex projects.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Limited Customization:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"While both offer some level of customization, power users might find themselves wanting more.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Tailoring the tools to fit unique workflows can be challenging.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Dependency on External Tools:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Practitest relies heavily on external automation tools.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Zephyr is deeply tied to JIRA, limiting its standalone capabilities.\"})})]}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Reporting Limitations:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Both tools could improve their reporting features.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Creating custom, in-depth reports can be cumbersome.\"})})]}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[\"Lack of Comprehensive \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-coverage-techniques-in-software-testing\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Test Coverage\"})}),\":\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Neither tool offers a complete solution for all testing needs.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Teams might need to supplement with additional tools for full coverage.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Limited Support for Newer Testing Methodologies:\"}),/*#__PURE__*/e(\"ul\",{children:/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"As testing evolves, both tools may lag in supporting cutting-edge practices.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Scalability Concerns:\"}),/*#__PURE__*/e(\"ul\",{children:/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"As teams grow, both tools may struggle to keep up with increasing demands.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Integration Gaps: \"}),/*#__PURE__*/e(\"ul\",{children:/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"While both offer integrations, there might be missing connections with newer or niche tools in your stack.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Cost Considerations:\"}),/*#__PURE__*/e(\"ul\",{children:/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"For smaller teams or startups, both tools can represent a significant investment.\"})})})]})]}),/*#__PURE__*/e(\"p\",{children:\"These limitations highlight an important point: there's no perfect, one-size-fits-all solution in the world of test management. Each team's needs are unique, and what works for one might not work for another.\"}),/*#__PURE__*/t(\"p\",{children:[\"So, what if you're looking for a tool that addresses some of these limitations? What if you need something that offers more flexibility, better performance with large datasets, and more \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-coverage-techniques-in-software-testing\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"comprehensive test coverage\"})}),\"?\"]})]});export const richText24=/*#__PURE__*/e(n.Fragment,{children:/*#__PURE__*/e(\"p\",{children:\"In the quest for the perfect test management tool, both Practitest and Zephyr offer compelling features. Practitest shines with its versatile, all-in-one approach, while Zephyr excels in JIRA-centric environments. However, both have limitations that may not suit every team's needs. The key is to assess your specific requirements, workflow, and budget. Remember, the best tool is the one that seamlessly integrates into your process and helps your team deliver high-quality software efficiently. Don't hesitate to explore alternatives or take advantage of free trials before making your decision. \"})});export const richText25=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"Hey there, tech enthusiasts! Ever wondered how to automate your Zoom meetings using Python? Well, you're in for a treat! Today, we're diving into the world of \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom API\"})}),\" and how you can harness its power with just a few lines of Python code.\"]}),/*#__PURE__*/t(\"p\",{children:[\"Zoom has become an integral part of our daily lives, whether for work, education, or catching up with friends. But did you know you can create, manage, and customize Zoom meetings programmatically? That's where the \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom API\"})}),\" comes in handy, and Python makes it a breeze to work with.\"]}),/*#__PURE__*/t(\"p\",{children:[\"In this guide, we'll walk you through the process of setting up your Zoom API account, writing some simple Python code, and creating your very first \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom meeting through API calls\"})}),\". Whether you're a Python newbie or a seasoned coder, this tutorial will have you automating Zoom tasks in no time.\"]}),/*#__PURE__*/e(\"p\",{children:\"So, grab your favorite caffeinated beverage, fire up your code editor, and let's get started on this exciting journey into the world of Zoom API and Python!\"})]});export const richText26=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Alright, let's kick things off by getting your Zoom API account ready for action. Don't worry, it's easier than you might think!\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Creating a Zoom Account First things first, you'll need a Zoom account. If you already have one, great! If not, head over to zoom.us and sign up. It's free and takes just a minute.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Navigating to the Zoom Marketplace Once you're logged in, it's time to visit the Zoom App Marketplace. Here's how:\"})})]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Go to \",/*#__PURE__*/e(a,{href:\"https://marketplace.zoom.us/\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"marketplace.zoom.us\"})})]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:'Click on the \"Develop\" dropdown in the top-right corner'})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:'Select \"Build App\"'})})]}),/*#__PURE__*/e(\"p\",{children:\"You'll feel like a kid in a candy store with all the options, but stay focused!\"}),/*#__PURE__*/e(\"ol\",{start:\"3\",children:/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Building a JWT App Now, let's create your app:\"})})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:'Click on \"Create\" under the JWT option'})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"You'll see a pop-up about Zoom's API License and Terms of Use. Give it a quick read and click \\\"I agree\\\"\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Time to name your app! Choose something cool (or boring, we won't judge)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Fill in some basic details like your name and email\"})})]}),/*#__PURE__*/e(\"ol\",{start:\"4\",children:/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Obtaining API Key and Secret You're in the home stretch now:\"})})}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:'After creating your app, navigate to the \"App Credentials\" tab'})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Here you'll find your API Key and API Secret\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Keep these safe! They're like the secret ingredients to your API recipe\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Pro tip: Never share your API credentials publicly. It's like giving away the keys to your digital kingdom!\"}),/*#__PURE__*/e(\"p\",{children:\"And there you have it! Your Zoom API account is set up and ready to go. Pat yourself on the back \u2013 you've just taken the first step towards Zoom automation mastery.\"})]});export const richText27=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Now that we've got our Zoom API account set up, it's time to get our hands dirty with some Python magic! Let's start by installing the necessary libraries and then move on to generating our JWT token.\"}),/*#__PURE__*/e(\"h3\",{children:\"Installing Required Python Libraries\"}),/*#__PURE__*/e(\"p\",{children:\"Before we dive into the code, we need to equip our Python environment with two essential libraries:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Requests library: This is our go-to for making \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/http-request-methods-verbs\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"HTTP requests\"})}),\". It's like the Swiss Army knife for interacting with web APIs.\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"PyJWT library: This little gem will help us generate our \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/jwt-json-web-tokens\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"JSON Web Tokens (JWT)\"})}),\" for authentication.\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"To install these libraries, open your terminal and run:\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:\"pip install requests pyjwt\",language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"Easy peasy, right? Now we're ready to roll!\"}),/*#__PURE__*/e(\"h3\",{children:\"Generating a JWT Token\"}),/*#__PURE__*/t(\"p\",{children:[\"Alright, let's create a function to generate our JWT token. This token is like a VIP pass that lets us access the \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public/zoom-account-api\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom API\"})}),\". Here's how we do it:\"]}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:\"import jwt\\nfrom time import time\\nAPI_KEY = 'Your_API_Key_Here'\\nAPI_SEC = 'Your_API_Secret_Here'\\ndef generate_token():\\n\\xa0\\xa0\\xa0\\xa0token = jwt.encode(\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0{'iss': API_KEY, 'exp': time() + 5000},\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0API_SEC,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0algorithm='HS256'\\n\\xa0\\xa0\\xa0\\xa0)\",language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"Let's break this down:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"We import the necessary modules: jwt for token generation and time for setting the expiration.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"We define our API_KEY and API_SEC variables. Remember to replace these with your actual credentials!\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Our generate_token() function does the heavy lifting:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"It creates a payload with two components:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"'iss': This is our API Key, which identifies our app to Zoom.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"'exp': This sets the expiration time for our token (current time + 5000 seconds).\"})})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"We use our API Secret to sign the token.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"We specify the hashing algorithm as 'HS256'.\"})})]})]})]}),/*#__PURE__*/e(\"p\",{children:\"And voil\\xe0! We've got ourselves a shiny new JWT token generator.\"}),/*#__PURE__*/e(\"p\",{children:\"This token is like a temporary password that proves to Zoom that we're authorized to use the API. It's more secure than sending our API key and secret with every request.\"}),/*#__PURE__*/e(\"h3\",{children:\"Creating a Zoom Meeting and Handling the API Response\"}),/*#__PURE__*/t(\"p\",{children:[\"Now that we've got our token generator up and running, let's dive into the fun part \u2013 \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public/zoom-meeting-api\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"creating a Zoom meeting with just a few lines of code\"})}),\"!\"]}),/*#__PURE__*/e(\"h3\",{children:\"Creating a Zoom Meeting\"}),/*#__PURE__*/e(\"p\",{children:\"First, we'll define our meeting details in JSON format. This is like filling out a form for Zoom, telling it what kind of meeting we want:\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:'import json\\nmeeting_details = {\\n\\xa0\\xa0\\xa0\\xa0\"topic\": \"Python Zoom Meeting\",\\n\\xa0\\xa0\\xa0\\xa0\"type\": 2,\\xa0 # Scheduled meeting\\n\\xa0\\xa0\\xa0\\xa0\"start_time\": \"2023-06-14T10:00:00\",\\xa0 # Use your desired date and time\\n\\xa0\\xa0\\xa0\\xa0\"duration\": \"45\",\\xa0 # Duration in minutes\\n\\xa0\\xa0\\xa0\\xa0\"timezone\": \"America/New_York\",\\n\\xa0\\xa0\\xa0\\xa0\"agenda\": \"Discuss Zoom API Integration\",\\n\\xa0\\xa0\\xa0\\xa0\"settings\": {\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"host_video\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"participant_video\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"join_before_host\": False,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"mute_upon_entry\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"watermark\": False,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"audio\": \"voip\",\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"auto_recording\": \"none\"\\n\\xa0\\xa0\\xa0\\xa0}\\n}',language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"Now, let's create a function to send this to Zoom's API:\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:\"import requests\\ndef create_meeting():\\n    headers = {\\n        'authorization': 'Bearer ' + generate_token(),\\n        'content-type': 'application/json'\\n    }\\n    r = requests.post(\\n        f'https://api.zoom.us/v2/users/me/meetings',\\n        headers=headers, \\n        data=json.dumps(meeting_details)\\n    )\\n    return r.json()\",language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"This function does a few key things:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"It sets up the headers, including our JWT token.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"It sends a POST request to \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom's API endpoint\"})}),\".\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"It includes our meeting details in the request.\"})})]}),/*#__PURE__*/e(\"h3\",{children:\"Handling the API Response\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:'def display_meeting_info():\\n\\xa0\\xa0\\xa0\\xa0response = create_meeting()\\n\\xa0\\xa0\\xa0\\xa0\\n\\xa0\\xa0\\xa0\\xa0join_url = response[\\'join_url\\']\\n\\xa0\\xa0\\xa0\\xa0meeting_password = response[\\'password\\']\\n\\xa0\\xa0\\xa0\\xa0print(f\"Your meeting has been created!\")\\n\\xa0\\xa0\\xa0\\xa0print(f\"Join URL: {join_url}\")\\n\\xa0\\xa0\\xa0\\xa0print(f\"Password: {meeting_password}\")\\n# Let\\'s run it!\\ndisplay_meeting_info()',language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"And there you have it! When you run this script, it will create a Zoom meeting and print out the join URL and password. It's that simple!\"}),/*#__PURE__*/e(\"p\",{children:\"You've just created your first Zoom meeting using Python and the Zoom API. How cool is that? With this foundation, you can start building more complex applications \u2013 maybe a meeting scheduler, or even a custom Zoom client. The possibilities are endless!\"}),/*#__PURE__*/e(\"h3\",{children:\"Complete Code Example and Running the Script\"}),/*#__PURE__*/e(\"p\",{children:\"Alright, let's put it all together! Here's the complete Python script that combines all the steps we've covered. This is your one-stop shop for creating Zoom meetings programmatically:\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:'import jwt\\nimport requests\\nimport json\\nfrom time import time\\n# Your Zoom API credentials\\nAPI_KEY = \\'Your_API_Key_Here\\'\\nAPI_SEC = \\'Your_API_Secret_Here\\'\\n# Function to generate a JWT token\\ndef generate_token():\\n\\xa0\\xa0\\xa0\\xa0token = jwt.encode(\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0{\\'iss\\': API_KEY, \\'exp\\': time() + 5000},\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0API_SEC,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0algorithm=\\'HS256\\'\\n\\xa0\\xa0\\xa0\\xa0)\\n\\xa0\\xa0\\xa0\\xa0return token\\n# Meeting details\\nmeeting_details = {\\n\\xa0\\xa0\\xa0\\xa0\"topic\": \"Python Zoom Meeting\",\\n\\xa0\\xa0\\xa0\\xa0\"type\": 2,\\xa0 # Scheduled meeting\\n\\xa0\\xa0\\xa0\\xa0\"start_time\": \"2023-06-14T10:00:00\",\\xa0 # Use your desired date and time\\n\\xa0\\xa0\\xa0\\xa0\"duration\": \"45\",\\xa0 # Duration in minutes\\n\\xa0\\xa0\\xa0\\xa0\"timezone\": \"America/New_York\",\\n\\xa0\\xa0\\xa0\\xa0\"agenda\": \"Discuss Zoom API Integration\",\\n\\xa0\\xa0\\xa0\\xa0\"settings\": {\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"host_video\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"participant_video\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"join_before_host\": False,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"mute_upon_entry\": True,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"watermark\": False,\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"audio\": \"voip\",\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\"auto_recording\": \"none\"\\n\\xa0\\xa0\\xa0\\xa0}\\n}\\n# Function to create a meeting\\ndef create_meeting():\\n\\xa0\\xa0\\xa0\\xa0headers = {\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\'authorization\\': \\'Bearer \\' + generate_token(),\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\'content-type\\': \\'application/json\\'\\n\\xa0\\xa0\\xa0\\xa0}\\n\\xa0\\xa0\\xa0\\xa0r = requests.post(\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0f\\'https://api.zoom.us/v2/users/me/meetings\\',\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0headers=headers,\\xa0\\n\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0\\xa0data=json.dumps(meeting_details)\\n\\xa0\\xa0\\xa0\\xa0)\\n\\xa0\\xa0\\xa0\\xa0return r.json()\\n# Function to display meeting info\\ndef display_meeting_info():\\n\\xa0\\xa0\\xa0\\xa0response = create_meeting()\\n\\xa0\\xa0\\xa0\\xa0\\n\\xa0\\xa0\\xa0\\xa0join_url = response[\\'join_url\\']\\n\\xa0\\xa0\\xa0\\xa0meeting_password = response[\\'password\\']\\n\\xa0\\xa0\\xa0\\xa0print(f\"Your meeting has been created!\")\\n\\xa0\\xa0\\xa0\\xa0print(f\"Join URL: {join_url}\")\\n\\xa0\\xa0\\xa0\\xa0print(f\"Password: {meeting_password}\")\\n# Run the script\\nif __name__ == \"__main__\":\\n\\xa0\\xa0\\xa0\\xa0display_meeting_info()',language:\"JSX\"})})}),/*#__PURE__*/e(\"h3\",{children:\"Running the Script\"}),/*#__PURE__*/e(\"p\",{children:\"Now for the moment of truth! Let's run this script and see the magic happen.\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Save the above code in a file, let's call it zoom_meeting_creator.py.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Open your terminal or command prompt.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Navigate to the directory where you saved the file.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/t(\"p\",{children:[\"Run the script by typing:\",/*#__PURE__*/e(\"br\",{}),/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:\"python zoom_meeting_creator.py\",language:\"JSX\"})})})]})]}),/*#__PURE__*/e(\"h3\",{children:\"Understanding the Output\"}),/*#__PURE__*/e(\"p\",{children:\"When you run the script, you should see output similar to this:\"}),/*#__PURE__*/e(\"div\",{className:\"framer-text-module\",style:{height:\"auto\",width:\"100%\"},children:/*#__PURE__*/e(r,{componentIdentifier:\"module:pVk4QsoHxASnVtUBp6jr/TbhpORLndv1iOkZzyo83/CodeBlock.js:default\",children:t=>/*#__PURE__*/e(i,{...t,code:\"Your meeting has been created!\\nJoin URL: https://us04web.zoom.us/j/12345678901?pwd=abcdefghijklmnop\\nPassword: 123456\",language:\"JSX\"})})}),/*#__PURE__*/e(\"p\",{children:\"Let's break down what's happening:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"The script generates a JWT token for authentication.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"It sends a request to Zoom's API to create a meeting with your specified details.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Zoom responds with the meeting information.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"The script extracts and displays the Join URL and Password.\"})})]}),/*#__PURE__*/e(\"p\",{children:\"The Join URL is what you'd share with participants to join your meeting. The password adds an extra layer of security.\"}),/*#__PURE__*/e(\"p\",{children:\"And there you have it! You've just created a Zoom meeting programmatically. Pretty neat, huh?\"}),/*#__PURE__*/e(\"p\",{children:\"Remember, this is just the tip of the iceberg. You can expand this script to create multiple meetings, schedule recurring meetings, or even integrate it into a larger application. The possibilities are endless!\"})]});export const richText28=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Congratulations! You've just unlocked the power of the Zoom API with Python. We've covered everything from setting up your API account to creating meetings with just a few lines of code. This is just the beginning of what you can achieve. Imagine automating your entire meeting schedule or integrating Zoom features into your own apps. The possibilities are endless!\"}),/*#__PURE__*/t(\"p\",{children:[\"Remember, practice makes perfect. Keep experimenting, and don't be afraid to dive deeper into the \",/*#__PURE__*/e(a,{href:\"https://developers.qodex.ai/zoom-public\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Zoom API documentation\"})}),\". Who knows? You might just create the next big Zoom integration that revolutionizes how we connect online.\"]})]});export const richText29=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/t(\"p\",{children:[\"In the fast-paced world of software development, having the right \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-data-management-strategy\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"test management\"})}),\" tool can make or break your project. Today, we're diving into a comparison of two popular contenders: \",/*#__PURE__*/e(\"strong\",{children:\"Kualitee and TestRail\"}),\".\"]}),/*#__PURE__*/t(\"p\",{children:[\"Whether you're a QA lead, a developer, or a project manager, you've likely heard of these tools. Both \",/*#__PURE__*/e(a,{href:\"https://www.kualitee.com/\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"Kualitee\"})}),\" and \",/*#__PURE__*/e(a,{href:\"https://www.testrail.com/\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"TestRail\"})}),\" are designed to streamline your testing process, but they each bring something unique to the table.\"]}),/*#__PURE__*/e(\"p\",{children:\"Kualitee, the newer kid on the block, has been making waves with its user-friendly interface and comprehensive feature set. On the other hand, TestRail, a well-established name in the industry, boasts a robust platform trusted by many large enterprises.\"}),/*#__PURE__*/e(\"p\",{children:\"But which one is the best fit for your team? That's exactly what we'll explore in this detailed comparison. We'll break down everything from pricing and user ratings to features and target industries, helping you make an informed decision.\"})]});export const richText30=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"When it comes to choosing a test management tool, understanding who it's designed for and how much it'll cost you is crucial. Let's break this down for Kualitee and TestRail.\"}),/*#__PURE__*/e(\"h3\",{children:\"Target Market: Mid-Market Mayhem\"}),/*#__PURE__*/e(\"p\",{children:\"Both Kualitee and TestRail have set their sights on the mid-market segment. This means they're ideal for growing companies and established businesses that need robust testing solutions without enterprise-level complexity.\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"Kualitee\"}),\": 57.7% of its reviews come from mid-market companies\"]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[/*#__PURE__*/e(\"strong\",{children:\"TestRail\"}),\": 49.3% of its reviews are from mid-market users\"]})})]}),/*#__PURE__*/e(\"p\",{children:\"This focus suggests that both tools offer a sweet spot of features and usability for medium-sized teams and projects.\"}),/*#__PURE__*/e(\"h3\",{children:\"Entry-Level Pricing: Free vs. Paid\"}),/*#__PURE__*/e(\"p\",{children:\"Here's where things get interesting:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee offers a free plan for up to 3 seats. This includes 1 project, 3 users, and 500 test cases. It's a great way to dip your toes in without opening your wallet.\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"TestRail starts at $34 per user per month for their Professional Cloud plan. While there's no free tier, they do offer a free trial to test the waters.\"})})]}),/*#__PURE__*/e(\"h3\",{children:\"Available Pricing Plans\"}),/*#__PURE__*/e(\"p\",{children:\"Kualitee keeps it simple with two plans:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Free plan (as mentioned above)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Professional Cloud plan (pricing details not provided in the source)\"})})]}),/*#__PURE__*/e(\"p\",{children:\"TestRail offers more options:\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Professional Cloud plan (starting at $34/user/month)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Two additional plans (details not specified in the source)\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Both tools offer cloud-based solutions, meaning you can get started quickly without heavy IT involvement.\"}),/*#__PURE__*/e(\"h3\",{children:\"The Bottom Line\"}),/*#__PURE__*/e(\"p\",{children:\"If you're working with a tight budget or want to start small, Kualitee's free plan is hard to beat. However, if you need more advanced features and don't mind paying from the get-go, TestRail's Professional Cloud plan could be a good fit.\"})]});export const richText31=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Let's face it - nothing beats real user experiences when it comes to evaluating software. So, let's dive into what users are saying about Kualitee and TestRail.\"}),/*#__PURE__*/e(\"h4\",{children:\"Overall Star Ratings: The Quick Glance\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 4.5 stars (based on 140 reviews)\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"TestRail: 4.4 stars (based on 590 reviews)\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Both tools are neck and neck in overall satisfaction, with Kualitee having a slight edge. But let's dig deeper, shall we?\"}),/*#__PURE__*/e(\"h4\",{children:\"Key Areas of Comparison: The Nitty-Gritty\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Ease of Use\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 8.9/10\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.6/10\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee takes the cake here, but both tools are considered user-friendly.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Setup and Administration\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 8.7/10 for setup, 8.8/10 for admin\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.5/10 for setup, 8.6/10 for admin\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee edges out TestRail slightly in both setup and administration ease.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Meeting Business Needs\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 9.1/10\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.6/10\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee seems to be hitting the mark more consistently when it comes to fulfilling business requirements.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Quality of Support\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 8.9/10\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.5/10\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Both tools offer solid support, but Kualitee users seem a bit more satisfied.\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Product Direction\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 9.5/10\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.6/10\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Users are particularly excited about where Kualitee is headed, giving it a near-perfect score for product direction.\"})})]}),/*#__PURE__*/e(\"h4\",{children:\"The Takeaway\"}),/*#__PURE__*/e(\"p\",{children:\"While both tools receive positive ratings across the board, Kualitee seems to have a slight edge in user satisfaction. It particularly shines in meeting business needs and product direction.\"}),/*#__PURE__*/e(\"p\",{children:\"However, don't let these numbers alone sway you. Remember, TestRail has a larger user base (590 reviews vs Kualitee's 140), which can sometimes lead to more varied opinions.\"}),/*#__PURE__*/e(\"p\",{children:\"In the next section, we'll look at the features that set these tools apart. After all, the best tool is the one that fits your specific needs like a glove!\"})]});export const richText32=/*#__PURE__*/t(n.Fragment,{children:[/*#__PURE__*/e(\"p\",{children:\"Now that we've seen what users think, let's dive into the features that make Kualitee and TestRail tick. After all, it's the functionality that'll determine whether a tool fits your workflow like a custom-tailored suit.\"}),/*#__PURE__*/e(\"h3\",{children:\"Test Management Capabilities: The Core Business\"}),/*#__PURE__*/t(\"p\",{children:[\"Both Kualitee and TestRail shine in their primary function: \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/test-data-management-strategy\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"test management\"})}),\". Here's how they stack up:\"]}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 9.0/10\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"TestRail: 8.0/10\"})})]}),/*#__PURE__*/e(\"p\",{children:\"While both tools offer robust test management features, Kualitee seems to have a slight edge according to user ratings. Both allow you to create, organize, and execute test cases with ease. They also provide reporting capabilities to keep your team and stakeholders in the loop.\"}),/*#__PURE__*/e(\"h3\",{children:\"Bug Tracking: Kualitee's Secret Weapon\"}),/*#__PURE__*/e(\"p\",{children:\"Here's where we see a significant difference:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: 9.0/10 for bug tracking\"})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"TestRail: Not enough data available\"})})]}),/*#__PURE__*/e(\"p\",{children:\"Kualitee offers integrated bug tracking capabilities, allowing you to seamlessly move from test execution to bug reporting without switching tools. This can be a major time-saver and reduce the risk of information getting lost in translation between systems.\"}),/*#__PURE__*/e(\"p\",{children:\"TestRail, on the other hand, doesn't have built-in bug tracking. It typically integrates with other tools like Jira for this functionality. This isn't necessarily a drawback if you're already using a dedicated bug tracking tool, but it's worth considering if you're looking for an all-in-one solution.\"}),/*#__PURE__*/e(\"h3\",{children:\"Other Notable Differences\"}),/*#__PURE__*/t(\"ol\",{children:[/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Ease of Setup:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"Kualitee: Known for its quick setup process\"})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"TestRail: Offers a cloud-based option that gets you started in minutes\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Integrations:\"}),/*#__PURE__*/e(\"ul\",{children:/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Both tools offer integrations with popular development and project management tools, but the specific integrations may differ. It's worth checking if they connect with the other tools in your stack.\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Customization:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"TestRail is known for its flexibility in customizing \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/create-test-data-ai-test-data-generation\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"test cases\"})}),\" and reports\"]})}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Kualitee offers customization options too, but user feedback suggests TestRail might have an edge here\"}),/*#__PURE__*/e(\"p\",{children:/*#__PURE__*/e(\"br\",{className:\"trailing-break\"})})]})]})]}),/*#__PURE__*/t(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:[/*#__PURE__*/e(\"p\",{children:\"Mobile App Testing:\"}),/*#__PURE__*/t(\"ul\",{children:[/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/t(\"p\",{children:[\"Kualitee offers features specifically for \",/*#__PURE__*/e(a,{href:\"https://qodex.ai/blog/top-mobile-app-automation-testing-tools-and-techniques\",motionChild:!0,nodeId:\"xUFEuGbVZ\",openInNewTab:!0,scopeId:\"contentManagement\",smoothScroll:!1,children:/*#__PURE__*/e(o.a,{children:\"mobile app testing\"})})]})}),/*#__PURE__*/e(\"li\",{\"data-preset-tag\":\"p\",style:{\"--framer-font-size\":\"11.5px\",\"--framer-text-color\":\"rgb(29, 28, 29)\",\"--framer-text-decoration\":\"none\"},children:/*#__PURE__*/e(\"p\",{children:\"TestRail's capabilities in this area aren't explicitly mentioned in the provided information\"})})]})]})]}),/*#__PURE__*/e(\"h3\",{children:\"The Bottom Line\"}),/*#__PURE__*/e(\"p\",{children:\"If you're looking for an all-in-one solution that includes bug tracking, Kualitee might be your best bet. However, if you're already happy with your current bug tracking solution and are looking for a highly customizable test management tool, TestRail could be the way to go.\"})]});\nexport const __FramerMetadata__ = {\"exports\":{\"richText16\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText21\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText8\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText25\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText6\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText17\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText28\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText7\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText32\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText13\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText26\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText29\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText14\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText4\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText31\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText10\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText11\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText19\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText22\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText15\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText30\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText2\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText27\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText3\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText9\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText12\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText20\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText24\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText23\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText5\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"richText18\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "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",
  "names": ["richText", "u", "x", "p", "Link", "motion", "richText1", "richText2", "richText3", "richText4", "richText5", "richText6", "richText7", "richText8", "richText9", "richText10", "richText11", "richText12", "richText13", "richText14", "richText15", "richText16", "richText17", "richText18", "richText19", "richText20", "richText21", "richText22", "richText23", "richText24", "richText25", "richText26", "richText27", "ComponentPresetsConsumer", "t", "CodeBlock_default", "richText28", "richText29", "richText30", "richText31", "richText32", "__FramerMetadata__"]
}
