[{"content":"What is FIWARE FIWARE is an open-source platform that provides standardized components to accelerate the development of applications in the context of smart resources and services.\nBorn in 2011 as an initiative of the European Commission in partnership with major technology companies, the FIWARE ecosystem is now present in cities, farms, industries, ports, energy networks, and many other domains that depend on real-time data.\nIn a smart city, FIWARE acts as a “brain” that integrates data from traffic, parking, public lighting, environment, and safety into a unified, real-time context view. Instead of each system living in its own silo, everything starts speaking the same language, enabling faster decisions and smarter public services.\nHow FIWARE sees the city For the FIWARE platform, a city (or any other smart environment) is broken down into abstractions. Each part of the real world becomes a digital context element that can be queried and updated in real time.\nEntities: represent elements of the city, such as parking spots, streetlights, buses, bins, sensors, and so on. Each of these physical elements has a “digital copy” inside the platform, called an entity. Attributes: describe the state of these entities. A parking spot may have attributes such as occupied/free; a streetlight may have attributes such as light intensity and energy consumption. In short, attributes are the pieces of information that characterize each entity at a given moment. Verticals: are the major business domains in which entities are organized, such as mobility, public lighting, safety, environment, energy, sanitation, and others. Each vertical has its own types of entities, but they all share the same context language. Context: is the digital representation of the current state of these entities. Put simply, it is the “snapshot of the moment” of the city, seen through its digital objects. In this way, FIWARE can abstract real-world elements of the city into a standardized context model. This allows different solutions and vendors to see the same urban reality without depending on a single proprietary system.\nThe FIWARE architecture From an architectural point of view, FIWARE is not a single system; it is a set of components that, combined, form a smart platform. Each solution uses only the building blocks needed for its use case, always built around a central element called the Context Broker.\nContext Broker: the core of the platform The Context Broker is the component responsible for maintaining and exposing the context in real time, that is, the up-to-date state of the entities that represent the city. It exposes the context API for creating, updating, querying, and subscribing to changes, acting as the central integration point for all other blocks.\nGeneric Enablers: building blocks around context Around the Context Broker, FIWARE offers several components called Generic Enablers. They extend the capabilities of the platform by enabling the integration of devices and sensors through IoT connectors, processing and storing data for history, analysis, and insights, as well as handling identity, authentication, and authorization to protect the city’s APIs and resources.\nApplications and systems consuming context On top of this base, web and mobile applications, operational dashboards, open data platforms, and even legacy city systems can consume the context exposed by FIWARE. From there, each team or vendor can build smart services on top of the same city view, without having to reinvent the integration layer.\nConclusion FIWARE was born as a concrete response to the chaos of isolated systems that exists in many cities: instead of each solution living in its own world, the platform proposes a common context language and a well-defined core, the Context Broker, around which everything connects.\nBy representing the city through standardized entities and attributes and providing pluggable blocks for IoT, data, and security, FIWARE creates a solid foundation for different teams, vendors, and startups to build smart services on top of the same urban reality.\nIn other words, FIWARE works as a common language for countless systems, allowing them to finally work together in building the connected future of smart cities.\n","date":"2026-04-13T12:01:02Z","image":"/p/fiware-the-heart-of-smart-cities/01-1-wmcb-z3c5vqbue8rurtl4g.png","permalink":"/p/fiware-the-heart-of-smart-cities/","title":"FIWARE: the heart of smart cities"},{"content":"O que é FIWARE FIWARE é uma plataforma open source que fornece componentes padronizados para acelerar o desenvolvimento de aplicações no contexto de recursos e serviços inteligentes.\nNascido em 2011 como iniciativa da Comissão Europeia em parceria com grandes empresas de tecnologia, o ecossistema FIWARE hoje está presente em cidades, fazendas, indústrias, portos, redes de energia e diversos outros domínios que dependem de dados em tempo real.\nEm uma cidade inteligente, o FIWARE atua como um “cérebro” que integra dados de trânsito, estacionamento, iluminação, meio ambiente e segurança em uma visão unificada de contexto em tempo real. Em vez de cada sistema viver em um silo, tudo passa a conversar pela mesma linguagem, abrindo espaço para decisões mais rápidas e serviços públicos mais inteligentes.\nComo a FIWARE enxerga a cidade Para a plataforma FIWARE, uma cidade (ou qualquer outro ambiente inteligente) é quebrada em abstrações. Cada parte do mundo real vira um elemento de contexto digital que pode ser consultado e atualizado em tempo real.\nEntidades: representam elementos da cidade, como vagas de estacionamento, postes de iluminação, ônibus, lixeiras, sensores e assim por diante. Cada um desses elementos físicos tem uma “cópia digital” dentro da plataforma, chamada de entidade. Atributos: descrevem o estado dessas entidades. Uma vaga pode ter atributos como ocupada/livre; um poste pode ter atributos como intensidade de luz e consumo de energia. Em resumo, os atributos são as informações que caracterizam cada entidade em um dado momento. **Verticais: **são grandes domínios de negócio onde as entidades são organizadas, como mobilidade, iluminação pública, segurança, meio ambiente, energia, saneamento etc. Cada vertical tem seus próprios tipos de entidade, mas todas compartilham a mesma linguagem de contexto. **Contexto: **é a representação digital do estado atual dessas entidades. De forma simples, é a “fotografia do momento” da cidade, vista através dos seus objetos digitais. Dessa forma, o FIWARE consegue abstrair elementos reais da cidade em um modelo de contexto padronizado. Isso permite que diferentes soluções e fornecedores enxerguem a mesma realidade urbana sem depender de um único sistema proprietário.\nA arquitetura FIWARE Em relação à arquitetura, o FIWARE não é um sistema único; ele é um conjunto de componentes que, combinados, formam uma plataforma inteligente. Assim, cada solução usa apenas os blocos necessários para o seu caso de uso, sempre construídos em torno de um elemento central chamado Context Broker.\nContext Broker: o núcleo da plataforma O Context Broker é o componente responsável por manter e disponibilizar o contexto em tempo real, ou seja, o estado atualizado das entidades que representam a cidade. É ele que expõe a API de contexto para criação, atualização, consulta e assinatura de mudanças, servindo como ponto central de integração entre todos os outros blocos.\nGeneric Enablers: blocos construídos ao redor do contexto Ao redor do Context Broker, o FIWARE oferece diversos componentes chamados Generic Enablers. Eles ampliam as capacidades da plataforma, permitindo integrar dispositivos e sensores por meio de conectores voltados para IoT, processar e armazenar dados para historização, análise e geração de insights, além de cuidar de identidade, autenticação e autorização para proteger APIs e recursos da cidade.\nAplicações e sistemas consumindo o contexto Com essa base, aplicações web e mobile, dashboards operacionais, plataformas de dados abertos e até sistemas legados da cidade podem consumir o contexto exposto pelo FIWARE. A partir daí, cada time ou fornecedor consegue construir serviços inteligentes em cima da mesma visão de cidade, sem precisar reinventar a camada de integração.\nConclusão FIWARE nasce como uma resposta concreta ao caos de sistemas isolados que existe em muitas cidades: em vez de cada solução viver no seu próprio mundo, a plataforma propõe uma linguagem comum de contexto e um núcleo bem definido, o Context Broker, em torno do qual tudo se conecta.\nAo representar a cidade em entidades e atributos padronizados e oferecer blocos plugáveis para IoT, dados e segurança, o FIWARE cria uma base sólida para que diferentes equipes, fornecedores e startups construam serviços inteligentes em cima da mesma visão de realidade urbana.\nO FIWARE funciona como uma linguagem comum para inúmeros sistemas, permitindo que eles finalmente trabalhem juntos na construção do futuro conectado das cidades inteligentes.\n","date":"2026-04-13T12:01:01Z","image":"/p/fiware-o-coracao-das-cidades-inteligentes/01-1-wmcb-z3c5vqbue8rurtl4g.png","permalink":"/p/fiware-o-coracao-das-cidades-inteligentes/","title":"FIWARE: o coração das cidades inteligentes"},{"content":"Um dos maiores desafios no desenvolvimento de software de qualidade é garantir que tudo continue funcionando como esperado, mesmo com mudanças constantes no código. É aí que entram os testes End to End. Eles ajudam a validar se sua aplicação está se comportando corretamente a partir do ponto de vista do usuário.\nOs testes E2E são ótimos para encontrar bugs porque simulam interações reais de usuários. Eles conseguem detectar problemas que testes unitários ou de integração podem deixar passar, como falhas na interface, problemas de navegação ou fluxos de usuário quebrados.\nMas sejamos honestos: testar E2E nem sempre é um mar de rosas. Esses testes podem ser lentos, frágeis e difíceis de manter. Escrevê-los e mantê-los pode ser um sofrimento, especialmente em aplicações que mudam com frequência ou que não têm uma base sólida de testes.\nÉ aí que a IA pode ajudar. Ela pode auxiliar na geração e manutenção de testes E2E, te deixando livre para focar em criar cenários de teste relevantes que cobrem caminhos críticos.\nNeste artigo, vamos explorar como usar IA com o Playwright para gerar código de teste E2E. Você escreve os cenários de teste e a IA cuida da implementação.\nPlaywright + MCP O que é o Playwright? Playwright é uma biblioteca open-source para automação de navegadores. Ele permite que você interaja com páginas da web, preencha formulários, clique em botões e execute outras ações , exatamente como um usuário real. O Playwright suporta vários navegadores (Chromium, Firefox, WebKit) e funciona com JavaScript, TypeScript, Python, Java e .NET.\nVocê pode usá-lo para simular interações de usuário e verificar o comportamento da sua aplicação através de testes automatizados.\nE o que é MCP? MCP (Model Context Protocol) é um protocolo que fornece uma forma padronizada de interagir com modelos de IA. Ele permite enviar requisições e receber respostas de sistemas de IA, abstraindo a complexidade da implementação por trás.\nPense nele como uma API para agentes de IA, onde você define quais ferramentas ele pode usar.\nOs dois juntos O Playwright permite automação de navegador. O MCP permite integração fluida com IA. Juntos, eles permitem que você gere cenários e códigos de teste usando IA, dando ao modelo o poder de explorar e testar sua aplicação como um humano de verdade.\nSetup Vamos configurar nosso projeto para usar o Playwright com MCP. Vamos instalar as dependências, configurar o ambiente e preparar tudo para escrever testes gerados por IA.\nPré-requisitos Node.js instalado Um editor de código (por exemplo, VS Code ou Cursor) Copilot instalado e configurado Instale e configure o Playwright Crie um novo projeto Node.js:\n1 npm init -y Instale o Playwright:\n1 2 npm install -D @playwright/test npx playwright install Configure o MCP no VS Code\nCrie um arquivo .vscode/mcp.json com o seguinte conteúdo:\n1 2 3 4 5 6 7 8 9 10 { \u0026#34;servers\u0026#34;: { \u0026#34;playwright\u0026#34;: { \u0026#34;command\u0026#34;: \u0026#34;npx\u0026#34;, \u0026#34;args\u0026#34;: [ \u0026#34;@playwright/mcp@latest\u0026#34; ] } } } Depois, crie um arquivo de prompt chamado generate-tests.prompt.md com este conteúdo:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 --- tools: [\u0026#39;playwright\u0026#39;] mode: \u0026#39;agent\u0026#39; --- - You are a playwright test generator. - You are given a scenario and you need to generate a playwright test for it. - DO NOT generate test code based on the scenario alone. - DO run steps one by one using the tools provided by the Playwright MCP. - When asked to explore a website: 1. Navigate to the specified URL 2. Explore 1 key functionality of the site and when finished close the browser. 3. Implement a Playwright TypeScript test that uses @playwright/test based on message history using Playwright\u0026#39;s best practices including role based locators, auto retrying assertions and with no added timeouts unless necessary as Playwright has built in retries and autowaiting if the correct locators and assertions are used. - Save generated test file in the tests directory - Execute the test file and iterate until the test passes - Include appropriate assertions to verify the expected behavior Pronto! Tudo configurado\nEscrevendo Testes com IA Com tudo configurado, você está pronto para escrever testes com ajuda da IA.\nAbra o Copilot Chat no seu editor VS Code e peça para explorar um site, como:\n1 Explore https://google.com O Copilot confirmará antes de executar o comando. Clique em “Sim” e ele abrirá o navegador.\nCom o navegador aberto, descreva as ações que você deseja que ele realize:\n1 Clique no campo de busca, digite \u0026#34;Playwright\u0026#34; e pressione Enter. Depois, clique na aba \u0026#39;Notícias\u0026#39; para ver as atualizações mais recentes. Após realizar os passos, peça para gerar o teste:\n1 Gere um teste Playwright baseado nas ações realizadas. A IA irá gerar e salvar o arquivo de teste, pronto para execução!\nConclusão Neste artigo, vimos como usar IA para criar testes de ponta a ponta com Playwright e MCP. Configuramos o ambiente, instalamos as ferramentas necessárias e passamos pelo processo de escrita de testes com ajuda da IA.\nClaro, a IA não é perfeita. Ela pode gerar código incorreto ou incompleto. Por isso, sempre revise e valide o que foi gerado antes de confiar totalmente. Mas como ponto de partida, é extremamente útil e pode economizar horas de trabalho manual.\nE lembre-se: a IA é uma ferramenta para engenheiros de QA, não um substituto. Ela te ajuda a ir mais rápido, mas a qualidade ainda depende do julgamento humano.\n","date":"2025-07-02T00:38:59Z","image":"/p/dando-acesso-do-meu-navegador-para-uma-ia-testes-e2e-com-playwright-mcp/01-1-gseuzw2va4g5zpj5o8ecdg.png","permalink":"/p/dando-acesso-do-meu-navegador-para-uma-ia-testes-e2e-com-playwright-mcp/","title":"Dando acesso do meu navegador para uma IA (Testes E2E com Playwright MCP)"},{"content":"A major challenge in building quality software is ensuring that everything keeps working as expected — even as the codebase changes. That’s where end-to-end (E2E) tests come in. They help validate that your application behaves correctly from the user’s perspective.\nE2E tests are great at catching bugs because they simulate real user interactions. They can detect issues that unit or integration tests might miss — like UI glitches, navigation problems, or broken user flows.\nBut let’s be honest: E2E testing isn’t always sunshine and rainbows. These tests can be slow, brittle, and hard to maintain. Writing and maintaining them is painful — especially in applications that change frequently or don’t have a solid testing foundation to begin with.\nThat’s where AI can help. It can assist in generating and maintaining E2E tests, freeing you to focus on designing high-impact scenarios that cover critical user paths and edge cases.\nIn this article, we’ll explore how to use AI with Playwright to generate E2E test code. You write the test scenarios, and AI handles the implementation.\nPlaywright + MCP What is Playwright? Playwright is a powerful open-source library for automating web browsers. It lets you interact with web pages, fill out forms, click buttons, and perform other actions — just like a real user would. Playwright supports multiple browsers (Chromium, Firefox, WebKit) and works with JavaScript, TypeScript, Python, Java, and .NET.\nYou can use it to simulate user interactions and verify your application’s behavior through automated tests.\nAnd what is MCP? MCP (Model Context Protocol) is a protocol that provides a standardized way to interact with AI models. It lets you send requests and receive responses from AI systems, abstracting away the complexity of the underlying implementation.\nThink of it as an API for AI agents, where you define what tools it can use.\nUsing them together Playwright enables browser automation. MCP enables seamless AI integration. Combined, they allow you to generate test scenarios and code using AI, giving the model the power to explore and test your application like a real human.\nSetup Let’s set up our project to use Playwright with MCP. We’ll install dependencies, configure the environment, and prepare everything to write AI-generated tests.\nPrerequisites Node.js installed A code edittor (e.g. VS Code, Cursor) Copilot installed and configured Install and configure Playwright Create a new Node.js project:\n1 npm init -y Install Playwright:\n1 2 npm install -D @playwright/test npx playwright install Configure MCP in VS Code\nCreate a .vscode/mcp.json file with the following:\n1 2 3 4 5 6 7 8 9 10 { \u0026#34;servers\u0026#34;: { \u0026#34;playwright\u0026#34;: { \u0026#34;command\u0026#34;: \u0026#34;npx\u0026#34;, \u0026#34;args\u0026#34;: [ \u0026#34;@playwright/mcp@latest\u0026#34; ] } } } Then, create a prompt file called generate-tests.prompt.md with this content:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 --- tools: [\u0026#39;playwright\u0026#39;] mode: \u0026#39;agent\u0026#39; --- - You are a Playwright test generator. - You are given a scenario and must generate a Playwright test for it. - DO NOT generate test code based on the scenario alone. - DO run steps one by one using the tools provided by Playwright MCP. - When asked to explore a website: 1. Navigate to the specified URL 2. Explore one key feature of the site, then close the browser. 3. Implement a Playwright TypeScript test using @playwright/test based on the message history, following best practices: role-based locators, auto-retrying assertions, and no unnecessary timeouts. - Save the test file in the `tests` directory. - Execute the test and iterate until it passes. - Include appropriate assertions to validate expected behavior. - Use clear, descriptive test titles and comments. 1 2 3 4 5 6 7 *That’s it! You’re all set* ## Writing Tests with AI With everything configured, you’re ready to write tests using AI. Open GitHub Copilot Chat in your VS Code editor and ask it to explore a website, like: Explore https://google.com\n1 2 3 4 5 6 7 8 Copilot will confirm before executing the command. Click “Yes”, and it will open a browser. ![](05-1-bdzksmsvulhvwwvcfyjyna.png) ![](06-1-kfcqkknlakx-aqj7hb8xeg.png) With the browser open, describe the actions you want it to perform: Click on the search input, type \u0026ldquo;Playwright e2e tests\u0026rdquo;, and press Enter. Then, click on the \u0026lsquo;News\u0026rsquo; tab to view the latest updates.\n1 2 3 4 ![](07-1-jkrzbvjtqqc0mja4afm-5a.gif) After performing the steps, ask it to generate the test: Generate a Playwright test based on the actions performed.\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 The AI will generate and save the test file, ready for execution! ![](08-1-srdqhh0wckubyhq-jidzlg.gif) ## Conclusion Pretty cool, right? In this article, we saw how to use AI to create end-to-end tests with Playwright and MCP. We configured the environment, installed the necessary tools, and walked through writing tests with the help of AI. ![](09-1-3izghufr1sfkdf1gopjqdg.gif) Of course, AI isn’t perfect. It can generate incorrect or incomplete test code. So, always review and validate the output before relying on it. But as a starting point, it’s incredibly helpful and can save hours of manual effort. ![](10-0-sl5zjl-92mypo1pr.gif) And remember: AI is a **tool** for QA engineers, not a **replacement**. It helps you go faster, but quality still needs human judgment. ","date":"2025-07-02T00:38:49Z","image":"/p/allowing-an-ai-to-access-my-browser-e2e-tests-with-playwright-mcp/01-1-gseuzw2va4g5zpj5o8ecdg.png","permalink":"/p/allowing-an-ai-to-access-my-browser-e2e-tests-with-playwright-mcp/","title":"Allowing an AI to Access My Browser (E2E Tests with Playwright MCP)"}]