Fala galera essa aula de hoje a gente vai falar sobre como explorar os testes não funcionais basicamente essa é uma aula não de testes exploratórios Tá mas sim sobre uma um conhecimento mais amplo sobre esse tema que é um tema que é pouco difundido né dentro da área de testes de software que são os testes não funcionais A ideia é que ao final dessa aula você conheça muito mais sobre o assunto e que também tenha dentro do seu bolso n na sua lista de coisas novas a estudar uma série de eh características ferramentas ou conceitos
que vão te ajudar dentro da sua jornada rumo a conseguir o seu alavanque de carreira beleza vamos lá então porque enquanto eu tava preparando essa aula tava tentando pensar numa forma super didática de colocar esse tema para vocês e eu acho que eu encontrei um caminho aqui que vai ser um caminho que é bastante didático em que as ideias vão se conectar bem e que você ao final dessa aula vai conseguir sair daqui com um pouco mais de conhecimento beleza show então vamos começar por esse ponto aqui bem quando a gente fala sobre atividades de
teste eh níveis de teste técnicas de teste tipos de teste artefatos de teste são cada um desses itens que eu acabei de mencionar são eh grupos de informações ou conceitos relacionados à área de testes de software quando a gente fala sobre tipos de teste há alguns por exemplo testes estruturais eh testes relacionados à mudança são tipos de teste segundo a literatura outras coisas também que são tipos de teste são testes funcionais e não funcionais só que dentro da carreira em teste de software em grande parte das vezes você vai escutar sobre testes funcionais menos menos
vezes você vai escutar sobre testes não funcionais e muito menos vai vai escutar sobre estruturais ou relacionados à mudança por quê Porque essa terminologia ela é pouco utilizada na prática de alguém que testa softwares agora testes funcionais faz parte do linguajar da terminologia da maioria dos testadores porque de alguma forma a gente acabou ficando com essa com esse tipo de teste como sendo eu diria que até o nosso a nossa atividade primária vamos dizer assim OK testes não funcionais falando sobre história eles eram mais voltados a especialistas em testes na minha época lá atrás né
e a gente tinha um profissional que era o testador o outro que era o analista de testes o outro que era o automatizador de testes tin um outro que era o líder de testes tinha um outro papel que era o gerente de testes um outro papel que era o diretor de testes e tinha um carinha chamado especialista em testes só que ele nunca era apenas especialista em testes ele era um especialista em testes de performance especialista em testes de usabilidade especialista em testes de bom Vocês entenderam né a gente tinha especialistas em testes para cada
um desses que a gente chama de características de qualidade de software era muito comum isso E aí um especialista que era muito mas muito requisitado na minha época era o especialista em testes de performance por quê Porque a área ainda estava se estabelecendo e teste de performance era algo que tava muito sabe eh como a gente diria hoje hypado eh porque a gente tava migrando de aplicações desktop para aplicações web entendeu Então tava super hypado ter a necessidade de um especialista em testes de performance tá eh e aí então quando dado essa questão dessa né
Essa questão histórica desse dessa necessidade tão grande de testadores de performance naquela época hoje quando você chega em alguém por exemplo se a gente tivesse num café eu e você entendeu eu chegasse em você falasse assim ah o que são testes não funcionais Provavelmente você iria ao invés de descrever o que significa testes não funcionais você me daria um exemplo você falaria assim ah Júlio eh teste não funcional por exemplo teste de performance não é se você for parar para pensar da última vez que você explicou testes não funcionais para alguém Provavelmente você começou assim
ah testes testes não funcionais é tipo o teste de performance né Por quê Porque historicamente ente foi isso que foi isso que a gente tinha como sendo sabe paradigma popular na época e performance realmente significa não significa mas teste de performance É sim um tipo de um um tipo de teste não funcional entendeu Só que não é o único eu acho que essa essa nossa aula de hoje ela traz muito disso de você conseguir ter uma visão um pouco maior assim mais abrangente sobre o tema sacou teste funcional por outro lado Puxa tem um um
montão de gente que que inclusive às vezes se denomina testador funcional já vi muita gente falando isso eu falo o que que você faz a pessoa fala ah eu sou um testador funcional puxa testador funcional é um termo que te limita tanto cara eh é um pouco pior do que teste de testador Manual tem um montão de gente que se denomina testador manual outro termo que te limita muito entendeu o que que você faz ah eu sou um testador ponto sabe se você faz uso ou não de ferramenta se você exercita um Ou uma ou
muitas características de qualidade de software pouco importa você no final das contas é um testador Esquece essa palavra de manual esse negócio de funcional por quê Porque isso acaba limitando o seu escopo seu trabalho seu salário sua valorização seu reconhecimento esquece disso cara que que você é eu sou um analista de Kway que que você é eu sou um Kway que que você é eu sou um um testador Independente de qual for a sua nomenclatura Esquece essa parada de manual de funcional essas paradas volto a dizer só limitam o seu o seu reconhecimento dentro da
empresa onde você está por exemplo hoje você vai aprender mais sobre testes não funcionais que você vai perceber que cara tem algumas outras coisas que você faz aqui também dentre as que eu vou falar para você que é não funcional então você não pode se denominar um um testador funcional porque você também às vezes faz outros testes não funcionais novamente eu sou um testador sacou Ah mas eu eu sou testador manual porque eu não uso Selenium não uso Cypress nada a ver cara se você usa ferramentas você não pode se denominar um testador manual por
qu porque você usa ferramentas no seu dia a dia nem tudo é feito por pelo ser humano é feito também por uso de alguns softwares Esquece essas paradas de manual e ional tá bom não deveria tá tá fazendo parte dessa aula mas já tá aqui para vocês um conselho que vai mudar sua história bem então como eu disse dentre todos esses diversos tipos de teste eu diria que funcionais e não funcionais são os mais conhecidos mais sabe tá na mais populares eh é importante que você saiba que tudo tudo que a gente fala relacionado a
testes não funcionais funcionais está relacionado diretamente ao tipo de requisito que a gente avalia enquanto eh nós estamos testando um software então todas as vezes que você fala assim olha eu vou testar um software abordagem que você escolhe a ferramenta que você escolhe a técnica que você escolhe a estratégia que você escolhe tudo isso está relacionado no final das contas ao tipo de de requisito que você tá Então o que acontece uma pessoa que trabalha como sendo um analista de negócios ou um analista de sistemas ele ou ela escreve eh requisitos para descrever como é
que o software tem que se comportar ou Quais são os atributos dele de qualidade essa pessoa escreve um requisito e ela fala assim Vou escrever um requisito funcional ou ela fala vou escrever um requisito não funcional E aí ela fala Qual que é o tipo de requisito não funcional que ela vai escrever e aí com base na leitura daquele requisito você fala opa vou já que eu tenho aqui um requisito funcional vou usar técnicas de teste que vão me ajudar a identificar Quais testes funcionais eu devo realizar se você tá eh vendo um requisito não
funcional você fala vou aplicar aqui algumas técnicas ou ferramentas para avaliar o software sobre a perspectiva não funcional de E aí tem lá diversas n ferramentas para que você possa utilizar ou técnicas abordagens que você pode utilizar para avaliar aquele determinado requisito não funcional mas tudo isso começa lá de trás do requisito do tipo do requisito Então a primeira dica para você hoje é a seguinte se você quer saber mais sobre o universo não funcional Chega amanhã na sua empresa e fala assim ô galera Onde está Onde estão documentados os nossos requisitos funcionais E aí
talvez eles tenham e eles falem ó tá lá no confluence na página xpto ou eles falem requisito não funcional a gente não documenta isso daqui não entendeu mas pergunta se alguém falar assim ah a gente não documenta você fala puxa Seria bacana a gente começar a pensar nisso né estruturar de maneira formal Quais são os requisitos não funcionais E aí durante a aula de hoje você vai entender um pouco melhor sobre o tema você vai poder até puxar essa discussão junto com o seu time já vai começar a se destacar ali sabe tem sei lá
cara um grande percentual de testadores que atua na área de teste de software e aprendeu o teste de software fazendo não estudou sobre isso então o que acontece eles estão lá na empresa e estão fazendo o mesmo trabalho de sempre Desde quando começaram e se você for perguntar para eles por que eles nunca estudaram talvez eles vão dizer assim ah é porque é apenas os conceitos mas no que ela quis dizer é Eu nunca parei para estudar de verdade e não tive tanta vontade assim de estudar ou pode ser que ela fala assim ah não
mas foi assim que me ensinaram na verdade ela quer dizer assim ah eu não tô nem aí cara tô fazendo o meu trabalho aqui e eu tenho essa essa né Essa Bengala para que eu possa me escorar aqui que é não me ensinaram o que eu deveria fazer você vocês não vocês estão entrando lá amanhã com uma pegada diferente você vai entrar lá assim cara eu estudei sobre um novo assunto e pesquisei um pouco mais assim acerca desse assunto e hoje tô aqui puxando uma discussão super importante as pessoas do seu time vão falar Eita
Que que tá acontecendo aqui cara porque esse Kway aqui por mais que ele seja novo na empresa e já chegou com umas ideias bacanas aqui paraas pessoas que que já trabalham na área vai falar assim Caramba que legal Júlio você tá aqui há tanto tempo tanto tempo tanto tempo você nunca tinha falado disso mas esse assunto é muito importante tava pensando mesmo em puxar essa discussão aqui para você que é novo completamente novo na área vai chegar lá discutindo sobre isso e as pessoas vão falar assim Caraca a gente tem um montão de Senor pleno
aqui e as pessoas nunca discutiram sobre esse assunto Pô bacana cara por quê Porque você tá buscando o seu alavan no final das contas teste de software é a ponte entendeu a ideia Beleza então lembre-se disso aí super dica para que você consiga não só trazer mais qualidade pro né ah pro software mas também que você consiga eh se destacar e conseguir chegar mais próximo do seu alaban Belê bom nesse slide aqui a gente falou sobre essa questão do tipo de requisito influenciar a forma com que a gente pensa em como vai testar um software
né bem eu disse para vocês que existem dois tipos de teste que são muito conhecidos o Né o funcional e não funcional e disse que teste de de software também tem a ver com o tipo do requisito Vamos pensar Então no que seria um requisito funcional um requisito funcional ele descreve quais ações um software deve ser capaz de realizar vou dar um exemplo transferir dinheiro entre clientes do banco Isso é uma funcionalidade é uma ação que o software pode fazer por exemplo a calculadora pode somar a calculadora pode dividir a calculadora pode sei lá se
for uma calculadora moderna Nosa lá pode calcular média pode fazer cálculos de contabilidade o seu aplicativo do banco te dá a oportunidade de emitir de de listar comprovantes de fazer um agendamento de transferência um agendamento de pagamento tudo que eu tô falando agora é funcional que mais ah o seu Insta dá a possibilidade de você seguir o Júlio de Limas Insta da possibilidade de você comentar de você cadastrar Stories de você você curtir Stories de você comentar postagens d a oportunidade de você seguir amigos que que é isso requisitos funcionais quer mais quero Júlio eh
o seu aplicativo de e-commerce favorito seu website de e-commerce favorito cara ele te dá a possibilidade de pesquisar de comprar de adicionar ao carrinho de remover do carrinho de aplicar cupom de desconto tudo isso requisito funcional se você testa essas funcionalidades você está fazendo um teste funcional faz sentido isso teste funcional é sobre testar as ações que o software pode fazer o software muitas vezes dá para você a possibilidade de você o usuário informar dados a ele ele processa os dados e te dá respostas às vezes ele nem precisa dos seus dados para processar algo
ele só vai lá e processa a informação que tem no banco Às vezes quem chama o seu software nem nem é um humano é uma outra máquina Às vezes o software processa a informação e não te dá nada na tela às vezes ele cóp um cupom numa impressora funcional o funcionamento do software as ações que ele realiza Hoje eu tava aqui um pouco antes da aula pensando como que seria a melhor didática para ensinar isso para ele está aqui ó testes funcionais ou requisitos funcionais são sobre as ações que o software faz e teste é
sobre você testar essas ações em engenharia de software a gente chama as ações de funções bacana né Tem até uma forma de você escrever uma função para um software é o mesmo esquema Belê e eu deixo aqui para você hoje até um raciocínio pensa assim tem muita gente que fala ah testar o código fazer um um teste de unidade por exemplo não é um teste funcional tem gente que fala isso pera aí no teste de unidade eu não tô fazendo uma chamada a uma função para verificar se ela realiza uma ação que foi um dia
pensada pro software sim então por que isso não é funcional entende o que eu quero dizer uma coisa que eu pensei é assim desde quando eu comecei na área de teste de software Eu costumava ser desenvolvedor Antes quando eu comecei na área de teste de software eu comecei diferente diferente de muita gente que eu conheço por aí eu não entrei na área e comecei a aprender fazendo não eu primeiro estudei muito sobre teste de software para depois entrar pra área isso me fez um bem cara um bezão assim entendeu por quê Porque eu busquei um
montão de fundamento antes de começar a estruturar a minha forma de trabalho e isso me ajudou tanto cara puxa hoje quando eu tô falando com os meus alunos eles falam Nossa que legal Júlio Porque tudo que você fala você fundamenta e essa fundamentação é algo importante por quê Porque as pessoas elas elas acabam sentindo em você um pouco mais de de confiança sacou é igual um advogado cara o advogado vai lá e começa a falar sobre alguma lei ou sobre algum assunto de repente ele fala isso tudo que eu tô falando para vocês é é
baseado na lei xpto número lá L lá do artigo blá quando um médico tá falando contigo ele não simplesmente Olha lá pro seu né pro seu machucado e fala ah machucou coitado vou dar um beijinho para sará não o médico fala olha isso daí é uma fratura de terceiro grau eh sabe Sei lá cara fala dos termos técnicos lá e fala ó Isso daqui é uma um tratamento baseado no no no pesquisador YZ que fala que isso daqui é a melhor forma de curar quem que você valoriza mais quem que você valoriza mais por que
que eu pergunto isso para você porque quando eu tô falando com os meus alunos sobre alavan eu sempre falo para eles isso eu falo mano é o seguinte eh Vocês precisam entender o seguinte que quando quanto mais profissionais vocês forem quantos quanto menos amadores vocês forem mais vocês vão conseguir ter sucesso dentro da sua carreira por quê Porque o profissional ele fundamenta suas decisões ele fala de maneira técnica e dessa forma você consegue Então se destacar beleza lembre-se disso então requisito não não o requisito funcional é sobre as ações que o software faz e o
não funcional o não funcional ele descreve os atributos se você é um ser humano O que você pode fazer puxa eu posso falar Eu posso gritar eu posso correr eu posso pular eu posso sacou eu posso ver eu posso escutar eu posso me movimentar eu posso eu posso fazer um monte de coisa são as ações e você tem os seus atributos não é pô você é legal você é chato sabe eh Dependendo de qual qual é a sua cor eu sou negro eu sou alto eu eu tenho atributos certo o software também tem atributos Só
que os atributos do software são diferentes dos atributos seus do ser humano entendeu quais são atributos do software se ele é rápido se ele é seguro se ele é fácil de usar se ele é acessível a qualquer pessoa se ele é portável se ele é se ele tem se ele é compatível que que que que que tem o sof software tem atributos atributos são diferentes de ações ações são as coisas que você pode que o software pode fazer atributos é a forma com qual ele faz aquilo entendem a diferença requisitos funcionais são sobre as ações
requisitos não funcionais são atributos dos software e aqui eu descrevi alguns deles ser rápido ser seguro ser fácil de usar não é e talvez você me pergunte assim mas Júlio é mais importante o teste funcional do que o teste não funcional a resposta é não cada um deles tem os tem a sua importância OK agora O importante o o o o a coisa mais mais eh crítica aqui para que vocês possam entender é o que está relacionado à palavra importante vou dar um exemplo tá bom Digamos que você faz parte de um time e nesse
time o a pessoa que toma as decisões ela quer que esse software ele vá pras mãos do cliente de uma maneira muito rápida e aí passa-se três meses e o seu time chega e fala assim Olha é o seguinte o software ele ele tem as ele tem as suas já se já se comportando como esperado Então olha só eu consigo transferir dinheiro eu consigo receber transferências eu consigo emitir comprovantes eu consigo ver os meus os meus as minhas movimentações ele ele tem tudo isso mas ó ele tem um atributo que é o atributo de de
ser rápido que ele não tá bem Não ele tá indo tá sendo bem lento na verdade não tá sendo rápido aí a pessoa que toma decisão você testador deu esse feedback você fala ó as coisas lá que a gente que as ações dele tão tão Ok beleza agora a o atributo de ser rápido não tá legal Não ele tá lento a pessoa que toma decisão tem que tomar decisão e dizer assim ah para mim tá tudo bem vamos assim lento mesmo depois a gente melhora por quê Porque é mais importante pra pessoa que o software
já tem as ações como esperar do que a questão do seu né do do usuário ele ele est usando um software que é lent entende a ideia beleza Eh Então esse é um é um ponto importante aqui para vocês Ambos são importantes a questão é que a palavra é importante para uns significa que para aquele determinado momento funcional é melhor do que não funcional beleza Eh quando a gente fala sobre essas questões relacionadas a requisitos testes eh Quality assurance né muitas vezes a gente acaba acaba falando o termo garantir garantir a qualidade testar tudo são
termos que vocês nunca deveriam usar garantir qualidade é um termo que eu nunca usaria testar tudo é um termo que eu nunca usaria testar 100% é um termo que eu nunca usaria entendeu por quê Porque garantir significa que você está atestando Que a qualidade está ali só que eu como sendo testador eu eu não posso garantir isso porque para garantir algo eu teria que testar todas as coisas e eu como sendo testador eu não tenho tempo para isso logo eu não garanto a qualidade nunca garanto a qualidade o que eu posso garantir é que os
caminhos que eu trilhei dentro de um software sejam eles funcionais ou não funcionais esses caminhos que eu trilhei eu vi o resultado E o resultado foi satisfatório ou não satisfatório isso eu posso dizer os caminhos que eu trile agora a palavra garantir nunca nunca estaria no meu dicionário volto a dizer testar tudo também nunca estaria no meu dicionário porque para testar tudo eu teria um nível de combinações gigantesca para fazer e na maioria das vezes eu não tenho esse tempo todo então testar tudo não tá no meu no no meu hã no meu vocabulário também
100% puxa 100% é muita coisa também né então volta a dizer é melhor que você diga aqui o que você faz é eu colaboro com os meus times colaboro com os meus times como aplicando testes funcionais ou não funcionais para conseguir revelar defeitos ou falhas críticas né E com isso eu acabo revelando outras também mas o meu o meu foco é eu quero buscar as coisas que são mais críticas cara dentro do funcional ou não funcional Beleza então lembre-se sempre disso né a gente não garante nada a gente contribui pros times né Beleza eh contribuo
como com o meu conhecimento em teste de software belê vamos seguir aí então porque quando a gente fala sobre né Eh sobre qualidade a gente tem uma Norma chamada ISO 25010 Ok ISO 25010 essa norma é uma Norma muito mas muito bacana para quem testa softwares por quê Porque ela serve pra gente como sendo uma forma de lembrar de algumas características que você precisa exercitar em um software olha só que legal é como um lembrete ela fala assim Olha é o seguinte você tá testando um software tô legal cara você já testou a perspectiva funcional
dele já Ou você já testou a performance dele Ah legal não tinha testado vou testar Ah você já testou também a segurança Ou você já testou eh se ele é compatível com versões anteriores você já testou se ele é é portável você já testou se ele é confiável ele te Ela te dá algumas características e você se lembra entendeu E aí você vai lá e exercita não é legal isso muito bacana né então a ISO ela é para você como sendo um guia um mapinha do que que você deveria exercitar para que você pudesse então
buscar eh identificar algumas características relacionadas à qualidade de software a gente chama isso de medir a aderência do software a algumas características de qualidade não é interessante bacana show show 210 se você quiser pesquisar mais sobre essa ISO depois digita aí na internet ISO 25010 Ok bom eh ela tem então oito características quais são elas são adequação funcional é a primeira eh confiabilidade em inglês seria reliability eh usabilidade eficiência manutenibilidade portabilidade eh compatibilidade e segurança são oito características de qualidade de software Ok E aí o que acontece cada uma dessas características de qualidade elas acabam
tendo subcaracterísticas de qualidade O que são subcaracterísticas de qualidade é como se fossem eh pensa nelas como se fosse ã agrupamentos menores de o que cada uma dessas características de qualidade representam Ok então por exemplo quando a gente fala de adequação funcional que seria mais mais o que a gente conhece como funcionalidade por exemplo eh É como se você tivesse dentro dela alguma características como eh completude como a exatidão adequação funcional eh dentro de performance eh como que é o tempo de resposta a utilização de recursos a capacidade eh compatibilidade coexistência interoperabilidade eh usabilidade a
gente tem acessibilidade em baixo de de usabilidade a preens que é o quão rápido você consegue aprender sobre algo entende cada uma dessas carac dessas oito características de qualidade de software acaba tendo dentro delas subcaracterísticas de qualidade Ok então debaixo da sabe debaixo da eh dessas oito características de qualidade que a ISO 25010 propõe Você ainda tem outras subcaracterísticas de qualidade de software ok muito bem que eu preparei para vocês nessa aula preparei aqui para vocês nessa aula um grupo de ferramentas que pode ajudar vocês nos testes de caractersticas e qualidade de software beleo menos
das o aqui então a gente vai ver três feramentas três nomes de ferramentas uma del só para que você poss depois estudar umou mais e buscar mais sobre essas ferramentas também e entender melhor sobre elas beleza vamos lá então primeiro adequação funcional adequação funcional é uma característica de qualidade de software funcional Ok então é funcional quais são ferramentas que você pode utilizar para avaliar a adequação funcional em um software você pode utilizar por exemplo o Cypress uma ferramenta para automação de teste funcionais em aplicações web ela também te dá a possibilidade de você testar outras
né outros tipos de aplicação Mas se a gente for olhar ali o fundamento do que a ferramenta foi criada para você vai perceber que n aplicações web é o seu é o forte dela Beleza você tem lá o Selenium também para que você possa avaliar adequação funcional E você também tem o play Essas são as únicas três ferramentas para que você possa fazer testes de adequação funcional numa aplicação não tem muitas outras cara trouxe aqui três de exemplo para vocês se você quer testar por exemplo a adequação funcional em aplicações mobile você pode utilizar o
o app você pode utilizar também o catalon você pode utilizar o tosca tem um monte de ferramentas que você pode utilizar para isso entendeu se você quer testar adequação funcional de um api você pode utilizar o Postman você pode utilizar o insom você pode utilizar o rest assure que a gente viu aqui na aula de ontem você pode utilizar sabe muitas outras ferramentas então tem muitas de adequação funcional aqui eu trago para vocês aqui apenas algumas para que você saiba e meio que se adequa falea Ah entendi cara o Jú falou que funcional é sobre
as ações realmente no Cypress no celenio no playwright a gente tá testando isso mesmo beleza então adequação funcional é um requisito é uma característica de qualidade e de software funcional E essas daqui são três ferramentas que vão te ajudar né quanto a isso Beleza muito bem não funcional a gente tem eficiência eficiência é uma das oito características de qualidade de software da ISO 25010 aplicações como o jmeter o load Runner e o k6 servem para te ajudar a testar a performance de uma aplicação que é aqui sinônimo para para eficiência Beleza então quando a gente
fala aqui de J meer de load Runner de C6 a gente tá falando claramente sobre a característica de qualidade de software eficiência beleza ótimo né Eh acho que eu tenho até um ponto bastante interessante aqui para vocês que é o seguinte quando a gente fala de testes de performance né a gente também tá falando sobre eficiência bele inclusive na se a gente for pegar a a tradução livre da dessa característica de qualidade de software da ISO seria performance barra eficiência entendeu eh e quando a gente fala sobre sobre essas traduções né de de termos em
inglês pro português a gente acaba percebendo que as pessoas elas têm meio que uma sabe uma uma compreensão incorreta da coisa né uma compreensão incorreta por isso que é sempre bom você conhecer terminologias por quê dentro do mercado nas empresas aquele gerentão antigo cara que não sabe muito bem das terminologias ele vai falar da profissão em teste de software de uma maneira super errada cara sabe vai falar e que performance é desempenho que é carga que é igual estress vai falar que garantia de qualidade é o que o testador faz vai falar que puxa é
teste de software que um testador é a mesma coisa que sabe que um sei lá que um que um Kway Sabe tem tem tem tem tem terminologias que as pessoas hoje em dia no mercado que não são estudiosos em testes ou que não são profissionais da área de teste de software vão falar errado que que você qual que é o seu papel testador profissional ir lá e ajudar essas pessoas a entender a terminologia entendeu ao invés de você simplesmente a pegar a terminologia incorreta ensine eles a terminologia correta Sabe se eles vão lá e falar
assim ah né Eh puxa eu o Júlio eh tô aqui usando o Cypress que é uma ferramenta de performance Puxa cara não é o cers é uma ferramenta sabe para adequação funcional entenderam então né Eh tentem sempre aí dar essa essa essa olhadinha e essa e essa atenção especial porque muitas vezes vocês vão se deparar com com profissionais que não são da área de testes que estão utilizando terminologias incorretas E aí você vai ter a oportunidade de conseguir ajudar essas pessoas a entender na Perspectiva da forma correta beleza lembre-se Vocês são as luzes lá dentro
das suas empresas beleza compatibilidade quando a gente fala em compatibilidade a gente tá falando sobre uma característica de qualidade de software não funcional que é para medir o quão compatível um software é OK e essa compatibilidade ela sempre tá relacionada a algo então por exemplo tem uma uma característica relacionada da a compatibilidade que você precisa exercitar que é a retro compatibilidade em inglês backwards compatibility então na retrocompatibilidade o que você avalia você avalia que um software ele consegue se adaptar a versões a a a versões mais modernas dele ou a versões eh é versões mais
modernas dele então por exemplo eu tenho lá uma uma API que ela tá na versão um E aí eu tenho aqui né e uma uma versão um do API e uma versão um do app eles se conectam Está ok certo então a compatibilidade deles é uma compatibilidade ótima ali né agora quando a gente tem aqui uma um app na versão 2 esse App na versão do ele também tem que tem que se conectar com essa api aqui e continuar fornecendo as informações a ele ainda certo porque o que acontece às vezes é que a gente
evolui uma API por exemplo e nessa evolução da api a gente quebra aquela compatibilidade que existia com as as versões eh eh com as versões mais modernas de um determinado app isso pode ser um problema pode ser um risco pro dia a dia aí da da organização então o que você faz você utiliza ferramentas Como por exemplo o swager di para conseguir te mostrar em um teste que a sua api ao evoluir não está quebrando a compatibilidade que tinha com outras versões do software Ok Então nesse caso aqui a api evoluiu mas não quebrou a
compatibilidade que ela tinha com versões mais anteriores de um app entende Swagger dif é uma ferramenta que te ajuda nisso é só o Swagger dif que testa compatibilidade Não essa daqui é só uma da das Ferramentas poem ter muitas outras por aí para medir compatibilidade de outras características Ok então lembre-se disso também Belê quando a gente fala sobre usabilidade usabilidade também é algo não funcional tá relacionado diretamente a um atributo de facilidade de uso de um software e essa facilidade do uso do software Como eu disse para vocês antes usabilidade tem subcaracterísticas de qualidade uma
delas é uma subcaracterísticas muito conhecida eu tenho um aluno que é o Bruno pules cara ele é um especialista na área deess ilidade ele arrebenta na Área Se algum dia vocês quiserem falar com alguém sobre acessibilidade ele é o cara lembra aí Bruno pulis ele manda super bem e é um cara super disponível também vocês podem acessá-lo o Bruno ele eh ele tem ele tem aí realmente uma paixão por aquela por aquela área que Ele defende tanto que é acessibilidade mas olha só acessibilidade é um negócio tão grande tão grande tão grande que existem muitos
estudos sobre isso sabe centenas ou até milhares de livros é artigos científicos Mas é uma subcaracterísticas da usabilidade que que isso quer dizer eh quer dizer que cada uma dessas características de qualidade elas são ainda maiores eu tô falando isso para vocês só para te dar uma questão de dimensão para você entender como que é a dimensão das coisas é um negócio grandioso mesmo entendeu cada uma dessas características de qualidade Mas falando de características de qualidade Olha só né Eh a gente tem aqui ferramentas como por exemplo Power mapper que é uma ferramenta de para
ajudar você a testar usabilidad Você tem o Wave e tem o ax que é para você testar a acessibilidade Se você entra no Wave por exemplo é uma ferramenta muito bacana você entra no Wave e você informa qual é eh a a URL de um site E aí o Wave vai lá olha para esse site e identifica quais são características ou quais são falhas relacionadas à acessibilidade não é legal então você consegue dali mesmo já entender alguns dos bugs que existem relacionados a a a essa característica eh de qualidade de software não funcional que é
a acessibilidade que tá dentro da usabilidade Beleza então tem aí para você essa essas ferramentas dentro dentro do Power mapper você tem um carinha que é para medir a usabilidade Então dentro dele você consegue fazer um uma um cheque de usabilidade para identificar se o seu site ele é fácil de usar ou não então também mesma coisa lá dentro do Power mapper você encontra coloca URL do site clica em check ele gira para você uma checagem para tentar identificar né Eh quais são aí essas e esses bugs relacionados à usabilidade no seu site confiabilidade confiabilidade
em inglês seria reliability E aí a confiabilidade é de o seu sistema ele continuar funcionando bem mesmo em situações Onde existe o caos né então sei lá um o seu o seu a sua aplicação o seu sistema Depende de cinco servidores um dele caiu um deles caiu cara será que o software continua funcionando Puxa agora o servidor de banco de dados caiu Puxa agora um contêiner parou de funcionar Será que o sistema continua a funcionar então o Gremlin o harness e o Chaos Monkey são ferramentas que elas vão lá de propósito né Eh e fazem
uma bagunça lá geram o caos no seu sistema tá eh para que você possa avaliar a confiabilidade dele é também uma característica de qualidade de software não funcional da ISO 25010 que é a confiabilidade você tem várias ferramentas para explorar isso daqui quando a gente fala de segurança é outra característica de qualidade de software não funcional né Eh e quando você usa ferramentas como o actic o fortify ou o zep Vocês conseguem também avaliar a segurança do software que é um atributo também então um teste não funcional Beleza então todas essas três ferramentas servem para
te ajudar a fazer testes não funcionais de segurança em um software e quando a gente fala sobre manutenibilidade também é um requisito não funcional e a manutenibilidade fala sobre o quão é fácil dar manutenção no código do software Ok então existem diversas ferramentas que te ajudam a identificar se o software possui manutenibilidade alguns deles em bold sonar cube o codacy são ferramentas que te ajudam a você identificar se o software ele está seguindo boas práticas eh faz análise estática no no código do software e traz para você alguns insights para que você possa então identificar
se o se aquele código do software tem ou não manutenibilidade novamente manutenibilidade é formada por um monte de coisas né um uma das características mais mais conhecidas para por nós testadores que está como sendo eh subcaracterísticas de qualidade da manutenibilidade é a testabilidade a testabilidade só a testabilidade sozinha já tem lá dezenas ou talvez centenas de artigos científicos só falando de testabilidade imagine então a manutenibilidade como um todo entende então lembrem-se disso quando a gente fala eh sobre quando a gente fala sobre eh manutenibilidade tem muitas ferramentas que podem te ajudar contar isso Beleza então
aqui tem algumas delas e aí falando então da portabilidade que é ainda uma das oito características de qualidade de software da ISO 25010 também é não funcional Então os testes que você faz nessa perspectiva também são não funcionais Ou seja você tá né tentando aí identificar uma uma Boo do software né a portabilidade é a facilidade que você tem de conseguir né Eh pegar um software e fazer ele funcionar em outras plataformas em outros sistemas operacionais em outros devices é você pegar aquilo que tá em um lugar e fazer ele funcionar em outro por exemplo
você tem um software que funciona no Windows 10 você quer saber se ele funciona no Windows 9 e no Windows 11 você tem um software que funciona no Firefox você quer saber se ele funciona no Chrome você tem um software que funciona no Chrome 35 você quer saber se ele funciona também no Chrome 34 entende Você tem um software que funciona no iOS você quer saber se ele funciona no Android né se ele tem uma instalação que serve para ambos você quer saber se ele funciona nos dois portabilidade é você trazer uma coisa de um
e fazer funcionar no outro você tem diversas ferramentas para isso aqui estão algumas delas Browser s slabs e lambda test lambda test é um software super inovador vamos dizer assim eu já conheço há alguns anos mas el dessas três aqui provavelmente a mais nova Beleza então tem aí três ferramentas que vocês podem utilizar para testar a portabilidade Ok então V voltar aqui pra gente ver adequação funcional eficiência compatibilidade ade confiabilidade segurança manutenibilidade e portabilidade são oito características de qualidade de software e aqui então três ferramentas para cada um total de 24 ferramentas para que depois
você possa investigar um pouco mais saber mais sobre como elas funcionam e ganhar mais expertise mais possibilidade de conseguir alavancar sua carreira através de ter um perfil mais abrangente dentro da área de teste de software né conhecer mais sobre teste não funcionais te ajuda a estar mais preparado pros desafios do mercado isso com certeza e é por isso que lá dentro dos módulos 15 e 16 da minha mentoria em teste de software a gente tem esses módulos dedicados a falar mais sobre testes não funcionais vamos seguir porque o nosso resumão aqui é o seguinte há
vários tipos de teste mas dois são muito conhecidos funcionais e não funcionais ambos servem para testes de software mais um para avaliar as ações outro os atributos E aí do 25010 define características que podem ser funcionais ou não funcionais beleza fiquem aí eh fiquem aí atentos quanto a isso Belê bom agora com você Você gostou dessa aula Júlio Gostei muito cara aprendi para caramba já dá o o o clique no curtir Belê agora tem outra coisa para mim algo que é muito especial comentário aí deixa ali o seu feedback vai ser muito bacana poder ler
cada uma das suas mensagens Ok se você acha que essa aula é importante para alguém compartilha também Belê pessoal muito sucesso a todos vocês um abraço Não esqueça de de deixar seu curtir e seu comentário