Icônes SCW
héros bg sans séparateur
Blog

修改 JUnit 5 的方法和类可见性

Alan Richardson
Publié le 21 décembre 2020
Dernière mise à jour le 9 mars 2026

Modification de la visibilité des méthodes et des classes pour JUnit 5

L'une des joies de la programmation est l'apprentissage constant nécessaire pour rester à jour. L'un des problèmes est que nous développons une familiarité et des schémas d'utilisation qui peuvent avoir un impact sur l'adoption de nouvelles approches. Sensei peut aider à la migration en identifiant les schémas obsolètes et en nous indiquant le correctif à utiliser pour aller de l'avant.

Par exemple, lorsque j'ai migré de JUnit 4 à JUnit 5, j'avais l'habitude d'écrire toutes mes classes et méthodes de test en tant que publiques. Mais avec JUnit 5, elles peuvent être privées.

par exemple, au lieu de :

public class Junit5VisibilityTest {
    @Test
    public void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


J'ai vraiment envie d'écrire :

class Junit5VisibilityTest {
    @Test
    void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


Il m'a fallu un certain temps pour acquérir la mémoire musculaire nécessaire pour coder ainsi, et je commets encore des erreurs de temps à autre.

L'utilisation Sensei

Avec Sensei , je peux créer des recettes qui trouvent les méthodes et les classes publiques et modifient automatiquement les déclarations pour les rendre privées.

Pour ce faire, j'ai créé une recette :

Nom - JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Description - Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Niveau - Erreur


Je l'ai classé comme erreur parce que je veux éradiquer cette pratique de codage et je veux une plus grande visibilité du problème lorsque j'écris du code dans l'IDE.

Modification de la déclaration de classe

Pour trouver les classes, je recherche toute classe qui a une annotation enfant de @Test dans Junit 5, c'est-à-dire org.junit.jupiter.api.Test.

Et lorsque la classe a le modificateur public :

search :
class :
with :
child :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"

Ensuite, la solution rapide modifie le modificateur pour supprimer la visibilité afin qu'il devienne la valeur par défaut, et la valeur par défaut est package private, ce qui est ce que je recherche.

availableFixes :
- name : "remove public visibility from JUnit 5 Test class"
actions :
- changeModifiers :
visibility : ""



Modifier les déclarations de méthode

La recette de l'amendement de la déclaration de méthode est à peu près la même que celle de la classe.

Tout d'abord, je recherche les méthodes publiques annotées avec @Test dans JUnit 5.

search :
method :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"


Je modifie ensuite le modificateur pour qu'il devienne la visibilité par défaut.

availableFixes :
- name : "Remove @Test method public visibility"
actions :
- changeModifiers :
visibility : ""


Conseil : modification de plusieurs méthodes

Sensei a la possibilité d'appliquer la correction rapide à toutes les violations du fichier en cours.

Lorsque j'utilise alt+enter pour appliquer le QuickFix.

Si je développe le menu du nom QuickFix, je peux voir une option pour :

"Fix All : 'JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques' dans le fichier"

Lorsque je sélectionne cette option, Sensei modifie toutes les occurrences du problème, et pas seulement celle que je sélectionne.


Supprimer la méthode d'essai Visibilité publique

Modifier la classe

De même qu'une méthode n'a pas besoin d'être publique, la classe n'a pas besoin de l'être non plus.

Je peux créer une recette et un QuckFix pour modifier la classe.

Nom - JUnit : Junit 5 Test classes do not need to be public
Description - Junit 5 Test classes do not need to be public
Niveau - Erreur


Lorsque je trouve une classe qui est publique et qui a une méthode avec une annotation @Test. Je souhaite alors modifier la visibilité.

search :
class :
modifier : "public"
anyOf :
- child :
method :
annotation :
type : "Test"


Je peux à nouveau modifier la définition de la classe à l'aide de l'action changeModifiers.

availableFixes :
- name : "Remove @Test class public visibility"
actions :
- changeModifiers :
visibility : ""


Résumé

Un outil d'analyse statique m'a initialement alerté sur cette approche recommandée dans JUnit. Mais l'outil d'analyse statique ne m'a pas aidé à développer la mémoire musculaire nécessaire pour modifier mon code au fur et à mesure que je programme.

Utilisez le "niveau" pour vous alerter. Lorsqu'il s'agit d'un problème que j'essaie d'éliminer de mon codage, je commence par le mettre à "Erreur", puis je le réduis au fur et à mesure que je me désintéresse de l'approche du codage.

N'oubliez pas que vous pouvez utiliser Sensei pour corriger tous les problèmes du fichier actuel en même temps, en utilisant l'option du menu déroulant lors de l'application de la correction rapide.

En créant une recette Sensei , je peux voir mon ancienne approche de codage en temps réel. Et la corriger rapidement, pour renforcer l'approche si je commets parfois des erreurs de codage.

---

Vous pouvez installer Sensei à partir d'IntelliJ en utilisant "Preferences \ Plugins" (Mac) ou "Settings \ Plugins" (Windows) puis en recherchant simplement "sensei secure code".

Le code source et les recettes se trouvent dans le dépôt `sensei-blog-examples` sur le compte GitHub Secure Code Warrior , dans le module `junitexamples`.



Veuillez consulter les ressources.
Veuillez consulter les ressources.

了解 Sensei 如何通过识别过时的模式并提示您提供后续使用的修复程序来帮助迁移。

Souhaitez-vous en savoir davantage ?

Alan Richardson a plus de vingt ans d'expérience professionnelle dans le domaine des technologies de l'information. Il a travaillé en tant que développeur et à tous les niveaux de la hiérarchie des tests, du testeur au responsable des tests. Responsable des relations avec les développeurs à l'adresse Secure Code Warrior, il travaille directement avec les équipes pour améliorer le développement de codes sécurisés de qualité. Alan est l'auteur de quatre livres, dont "Dear Evil Tester" et "Java For Testers". Alan a également créé une formation en ligne courses pour aider les gens à apprendre les tests techniques sur le Web et Selenium WebDriver avec Java. Alan publie ses écrits et ses vidéos de formation sur SeleniumSimplified.com, EvilTester.com, JavaForTesters.com et CompendiumDev.co.uk.

En savoir plus

Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.

Veuillez réserver une démonstration.
Partager sur :
marques LinkedInSocialLogo x
Auteur
Alan Richardson
Publié le 21 décembre 2020

Alan Richardson a plus de vingt ans d'expérience professionnelle dans le domaine des technologies de l'information. Il a travaillé en tant que développeur et à tous les niveaux de la hiérarchie des tests, du testeur au responsable des tests. Responsable des relations avec les développeurs à l'adresse Secure Code Warrior, il travaille directement avec les équipes pour améliorer le développement de codes sécurisés de qualité. Alan est l'auteur de quatre livres, dont "Dear Evil Tester" et "Java For Testers". Alan a également créé une formation en ligne courses pour aider les gens à apprendre les tests techniques sur le Web et Selenium WebDriver avec Java. Alan publie ses écrits et ses vidéos de formation sur SeleniumSimplified.com, EvilTester.com, JavaForTesters.com et CompendiumDev.co.uk.

Partager sur :
marques LinkedInSocialLogo x

Modification de la visibilité des méthodes et des classes pour JUnit 5

L'une des joies de la programmation est l'apprentissage constant nécessaire pour rester à jour. L'un des problèmes est que nous développons une familiarité et des schémas d'utilisation qui peuvent avoir un impact sur l'adoption de nouvelles approches. Sensei peut aider à la migration en identifiant les schémas obsolètes et en nous indiquant le correctif à utiliser pour aller de l'avant.

Par exemple, lorsque j'ai migré de JUnit 4 à JUnit 5, j'avais l'habitude d'écrire toutes mes classes et méthodes de test en tant que publiques. Mais avec JUnit 5, elles peuvent être privées.

par exemple, au lieu de :

public class Junit5VisibilityTest {
    @Test
    public void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


J'ai vraiment envie d'écrire :

class Junit5VisibilityTest {
    @Test
    void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


Il m'a fallu un certain temps pour acquérir la mémoire musculaire nécessaire pour coder ainsi, et je commets encore des erreurs de temps à autre.

L'utilisation Sensei

Avec Sensei , je peux créer des recettes qui trouvent les méthodes et les classes publiques et modifient automatiquement les déclarations pour les rendre privées.

Pour ce faire, j'ai créé une recette :

Nom - JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Description - Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Niveau - Erreur


Je l'ai classé comme erreur parce que je veux éradiquer cette pratique de codage et je veux une plus grande visibilité du problème lorsque j'écris du code dans l'IDE.

Modification de la déclaration de classe

Pour trouver les classes, je recherche toute classe qui a une annotation enfant de @Test dans Junit 5, c'est-à-dire org.junit.jupiter.api.Test.

Et lorsque la classe a le modificateur public :

search :
class :
with :
child :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"

Ensuite, la solution rapide modifie le modificateur pour supprimer la visibilité afin qu'il devienne la valeur par défaut, et la valeur par défaut est package private, ce qui est ce que je recherche.

availableFixes :
- name : "remove public visibility from JUnit 5 Test class"
actions :
- changeModifiers :
visibility : ""



Modifier les déclarations de méthode

La recette de l'amendement de la déclaration de méthode est à peu près la même que celle de la classe.

Tout d'abord, je recherche les méthodes publiques annotées avec @Test dans JUnit 5.

search :
method :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"


Je modifie ensuite le modificateur pour qu'il devienne la visibilité par défaut.

availableFixes :
- name : "Remove @Test method public visibility"
actions :
- changeModifiers :
visibility : ""


Conseil : modification de plusieurs méthodes

Sensei a la possibilité d'appliquer la correction rapide à toutes les violations du fichier en cours.

Lorsque j'utilise alt+enter pour appliquer le QuickFix.

Si je développe le menu du nom QuickFix, je peux voir une option pour :

"Fix All : 'JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques' dans le fichier"

Lorsque je sélectionne cette option, Sensei modifie toutes les occurrences du problème, et pas seulement celle que je sélectionne.


Supprimer la méthode d'essai Visibilité publique

Modifier la classe

De même qu'une méthode n'a pas besoin d'être publique, la classe n'a pas besoin de l'être non plus.

Je peux créer une recette et un QuckFix pour modifier la classe.

Nom - JUnit : Junit 5 Test classes do not need to be public
Description - Junit 5 Test classes do not need to be public
Niveau - Erreur


Lorsque je trouve une classe qui est publique et qui a une méthode avec une annotation @Test. Je souhaite alors modifier la visibilité.

search :
class :
modifier : "public"
anyOf :
- child :
method :
annotation :
type : "Test"


Je peux à nouveau modifier la définition de la classe à l'aide de l'action changeModifiers.

availableFixes :
- name : "Remove @Test class public visibility"
actions :
- changeModifiers :
visibility : ""


Résumé

Un outil d'analyse statique m'a initialement alerté sur cette approche recommandée dans JUnit. Mais l'outil d'analyse statique ne m'a pas aidé à développer la mémoire musculaire nécessaire pour modifier mon code au fur et à mesure que je programme.

Utilisez le "niveau" pour vous alerter. Lorsqu'il s'agit d'un problème que j'essaie d'éliminer de mon codage, je commence par le mettre à "Erreur", puis je le réduis au fur et à mesure que je me désintéresse de l'approche du codage.

N'oubliez pas que vous pouvez utiliser Sensei pour corriger tous les problèmes du fichier actuel en même temps, en utilisant l'option du menu déroulant lors de l'application de la correction rapide.

En créant une recette Sensei , je peux voir mon ancienne approche de codage en temps réel. Et la corriger rapidement, pour renforcer l'approche si je commets parfois des erreurs de codage.

---

Vous pouvez installer Sensei à partir d'IntelliJ en utilisant "Preferences \ Plugins" (Mac) ou "Settings \ Plugins" (Windows) puis en recherchant simplement "sensei secure code".

Le code source et les recettes se trouvent dans le dépôt `sensei-blog-examples` sur le compte GitHub Secure Code Warrior , dans le module `junitexamples`.



Veuillez consulter les ressources.
Veuillez consulter les ressources.

Veuillez remplir le formulaire ci-dessous pour télécharger le rapport.

Nous souhaiterions obtenir votre autorisation afin de vous envoyer des informations concernant nos produits et/ou des sujets liés à la sécurité informatique. Nous traiterons toujours vos informations personnelles avec la plus grande confidentialité et ne les vendrons jamais à d'autres entreprises à des fins commerciales.

Soumettre
icône de réussite scw
icône d'erreur scw
Pour soumettre le formulaire, veuillez activer les cookies analytiques. Une fois terminé, vous pouvez les désactiver à nouveau si vous le souhaitez.

Modification de la visibilité des méthodes et des classes pour JUnit 5

L'une des joies de la programmation est l'apprentissage constant nécessaire pour rester à jour. L'un des problèmes est que nous développons une familiarité et des schémas d'utilisation qui peuvent avoir un impact sur l'adoption de nouvelles approches. Sensei peut aider à la migration en identifiant les schémas obsolètes et en nous indiquant le correctif à utiliser pour aller de l'avant.

Par exemple, lorsque j'ai migré de JUnit 4 à JUnit 5, j'avais l'habitude d'écrire toutes mes classes et méthodes de test en tant que publiques. Mais avec JUnit 5, elles peuvent être privées.

par exemple, au lieu de :

public class Junit5VisibilityTest {
    @Test
    public void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


J'ai vraiment envie d'écrire :

class Junit5VisibilityTest {
    @Test
    void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


Il m'a fallu un certain temps pour acquérir la mémoire musculaire nécessaire pour coder ainsi, et je commets encore des erreurs de temps à autre.

L'utilisation Sensei

Avec Sensei , je peux créer des recettes qui trouvent les méthodes et les classes publiques et modifient automatiquement les déclarations pour les rendre privées.

Pour ce faire, j'ai créé une recette :

Nom - JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Description - Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Niveau - Erreur


Je l'ai classé comme erreur parce que je veux éradiquer cette pratique de codage et je veux une plus grande visibilité du problème lorsque j'écris du code dans l'IDE.

Modification de la déclaration de classe

Pour trouver les classes, je recherche toute classe qui a une annotation enfant de @Test dans Junit 5, c'est-à-dire org.junit.jupiter.api.Test.

Et lorsque la classe a le modificateur public :

search :
class :
with :
child :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"

Ensuite, la solution rapide modifie le modificateur pour supprimer la visibilité afin qu'il devienne la valeur par défaut, et la valeur par défaut est package private, ce qui est ce que je recherche.

availableFixes :
- name : "remove public visibility from JUnit 5 Test class"
actions :
- changeModifiers :
visibility : ""



Modifier les déclarations de méthode

La recette de l'amendement de la déclaration de méthode est à peu près la même que celle de la classe.

Tout d'abord, je recherche les méthodes publiques annotées avec @Test dans JUnit 5.

search :
method :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"


Je modifie ensuite le modificateur pour qu'il devienne la visibilité par défaut.

availableFixes :
- name : "Remove @Test method public visibility"
actions :
- changeModifiers :
visibility : ""


Conseil : modification de plusieurs méthodes

Sensei a la possibilité d'appliquer la correction rapide à toutes les violations du fichier en cours.

Lorsque j'utilise alt+enter pour appliquer le QuickFix.

Si je développe le menu du nom QuickFix, je peux voir une option pour :

"Fix All : 'JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques' dans le fichier"

Lorsque je sélectionne cette option, Sensei modifie toutes les occurrences du problème, et pas seulement celle que je sélectionne.


Supprimer la méthode d'essai Visibilité publique

Modifier la classe

De même qu'une méthode n'a pas besoin d'être publique, la classe n'a pas besoin de l'être non plus.

Je peux créer une recette et un QuckFix pour modifier la classe.

Nom - JUnit : Junit 5 Test classes do not need to be public
Description - Junit 5 Test classes do not need to be public
Niveau - Erreur


Lorsque je trouve une classe qui est publique et qui a une méthode avec une annotation @Test. Je souhaite alors modifier la visibilité.

search :
class :
modifier : "public"
anyOf :
- child :
method :
annotation :
type : "Test"


Je peux à nouveau modifier la définition de la classe à l'aide de l'action changeModifiers.

availableFixes :
- name : "Remove @Test class public visibility"
actions :
- changeModifiers :
visibility : ""


Résumé

Un outil d'analyse statique m'a initialement alerté sur cette approche recommandée dans JUnit. Mais l'outil d'analyse statique ne m'a pas aidé à développer la mémoire musculaire nécessaire pour modifier mon code au fur et à mesure que je programme.

Utilisez le "niveau" pour vous alerter. Lorsqu'il s'agit d'un problème que j'essaie d'éliminer de mon codage, je commence par le mettre à "Erreur", puis je le réduis au fur et à mesure que je me désintéresse de l'approche du codage.

N'oubliez pas que vous pouvez utiliser Sensei pour corriger tous les problèmes du fichier actuel en même temps, en utilisant l'option du menu déroulant lors de l'application de la correction rapide.

En créant une recette Sensei , je peux voir mon ancienne approche de codage en temps réel. Et la corriger rapidement, pour renforcer l'approche si je commets parfois des erreurs de codage.

---

Vous pouvez installer Sensei à partir d'IntelliJ en utilisant "Preferences \ Plugins" (Mac) ou "Settings \ Plugins" (Windows) puis en recherchant simplement "sensei secure code".

Le code source et les recettes se trouvent dans le dépôt `sensei-blog-examples` sur le compte GitHub Secure Code Warrior , dans le module `junitexamples`.



Visionner le webinaire
Commençons.
En savoir plus

Veuillez cliquer sur le lien ci-dessous pour télécharger le PDF de cette ressource.

Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.

Veuillez consulter le rapport.Veuillez réserver une démonstration.
Télécharger le PDF
Veuillez consulter les ressources.
Partager sur :
marques LinkedInSocialLogo x
Souhaitez-vous en savoir davantage ?

Partager sur :
marques LinkedInSocialLogo x
Auteur
Alan Richardson
Publié le 21 décembre 2020

Alan Richardson a plus de vingt ans d'expérience professionnelle dans le domaine des technologies de l'information. Il a travaillé en tant que développeur et à tous les niveaux de la hiérarchie des tests, du testeur au responsable des tests. Responsable des relations avec les développeurs à l'adresse Secure Code Warrior, il travaille directement avec les équipes pour améliorer le développement de codes sécurisés de qualité. Alan est l'auteur de quatre livres, dont "Dear Evil Tester" et "Java For Testers". Alan a également créé une formation en ligne courses pour aider les gens à apprendre les tests techniques sur le Web et Selenium WebDriver avec Java. Alan publie ses écrits et ses vidéos de formation sur SeleniumSimplified.com, EvilTester.com, JavaForTesters.com et CompendiumDev.co.uk.

Partager sur :
marques LinkedInSocialLogo x

Modification de la visibilité des méthodes et des classes pour JUnit 5

L'une des joies de la programmation est l'apprentissage constant nécessaire pour rester à jour. L'un des problèmes est que nous développons une familiarité et des schémas d'utilisation qui peuvent avoir un impact sur l'adoption de nouvelles approches. Sensei peut aider à la migration en identifiant les schémas obsolètes et en nous indiquant le correctif à utiliser pour aller de l'avant.

Par exemple, lorsque j'ai migré de JUnit 4 à JUnit 5, j'avais l'habitude d'écrire toutes mes classes et méthodes de test en tant que publiques. Mais avec JUnit 5, elles peuvent être privées.

par exemple, au lieu de :

public class Junit5VisibilityTest {
    @Test
    public void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


J'ai vraiment envie d'écrire :

class Junit5VisibilityTest {
    @Test
    void thisDoesNotNeedToBePublic(){
        Assertions.assertTrue(true);
    }
}


Il m'a fallu un certain temps pour acquérir la mémoire musculaire nécessaire pour coder ainsi, et je commets encore des erreurs de temps à autre.

L'utilisation Sensei

Avec Sensei , je peux créer des recettes qui trouvent les méthodes et les classes publiques et modifient automatiquement les déclarations pour les rendre privées.

Pour ce faire, j'ai créé une recette :

Nom - JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Description - Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques
Niveau - Erreur


Je l'ai classé comme erreur parce que je veux éradiquer cette pratique de codage et je veux une plus grande visibilité du problème lorsque j'écris du code dans l'IDE.

Modification de la déclaration de classe

Pour trouver les classes, je recherche toute classe qui a une annotation enfant de @Test dans Junit 5, c'est-à-dire org.junit.jupiter.api.Test.

Et lorsque la classe a le modificateur public :

search :
class :
with :
child :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"

Ensuite, la solution rapide modifie le modificateur pour supprimer la visibilité afin qu'il devienne la valeur par défaut, et la valeur par défaut est package private, ce qui est ce que je recherche.

availableFixes :
- name : "remove public visibility from JUnit 5 Test class"
actions :
- changeModifiers :
visibility : ""



Modifier les déclarations de méthode

La recette de l'amendement de la déclaration de méthode est à peu près la même que celle de la classe.

Tout d'abord, je recherche les méthodes publiques annotées avec @Test dans JUnit 5.

search :
method :
annotation :
type : "org.junit.jupiter.api.Test"
modifier : "public"


Je modifie ensuite le modificateur pour qu'il devienne la visibilité par défaut.

availableFixes :
- name : "Remove @Test method public visibility"
actions :
- changeModifiers :
visibility : ""


Conseil : modification de plusieurs méthodes

Sensei a la possibilité d'appliquer la correction rapide à toutes les violations du fichier en cours.

Lorsque j'utilise alt+enter pour appliquer le QuickFix.

Si je développe le menu du nom QuickFix, je peux voir une option pour :

"Fix All : 'JUnit : Les méthodes de test de JUnit 5 n'ont pas besoin d'être publiques' dans le fichier"

Lorsque je sélectionne cette option, Sensei modifie toutes les occurrences du problème, et pas seulement celle que je sélectionne.


Supprimer la méthode d'essai Visibilité publique

Modifier la classe

De même qu'une méthode n'a pas besoin d'être publique, la classe n'a pas besoin de l'être non plus.

Je peux créer une recette et un QuckFix pour modifier la classe.

Nom - JUnit : Junit 5 Test classes do not need to be public
Description - Junit 5 Test classes do not need to be public
Niveau - Erreur


Lorsque je trouve une classe qui est publique et qui a une méthode avec une annotation @Test. Je souhaite alors modifier la visibilité.

search :
class :
modifier : "public"
anyOf :
- child :
method :
annotation :
type : "Test"


Je peux à nouveau modifier la définition de la classe à l'aide de l'action changeModifiers.

availableFixes :
- name : "Remove @Test class public visibility"
actions :
- changeModifiers :
visibility : ""


Résumé

Un outil d'analyse statique m'a initialement alerté sur cette approche recommandée dans JUnit. Mais l'outil d'analyse statique ne m'a pas aidé à développer la mémoire musculaire nécessaire pour modifier mon code au fur et à mesure que je programme.

Utilisez le "niveau" pour vous alerter. Lorsqu'il s'agit d'un problème que j'essaie d'éliminer de mon codage, je commence par le mettre à "Erreur", puis je le réduis au fur et à mesure que je me désintéresse de l'approche du codage.

N'oubliez pas que vous pouvez utiliser Sensei pour corriger tous les problèmes du fichier actuel en même temps, en utilisant l'option du menu déroulant lors de l'application de la correction rapide.

En créant une recette Sensei , je peux voir mon ancienne approche de codage en temps réel. Et la corriger rapidement, pour renforcer l'approche si je commets parfois des erreurs de codage.

---

Vous pouvez installer Sensei à partir d'IntelliJ en utilisant "Preferences \ Plugins" (Mac) ou "Settings \ Plugins" (Windows) puis en recherchant simplement "sensei secure code".

Le code source et les recettes se trouvent dans le dépôt `sensei-blog-examples` sur le compte GitHub Secure Code Warrior , dans le module `junitexamples`.



Table des matières

Télécharger le PDF
Veuillez consulter les ressources.
Souhaitez-vous en savoir davantage ?

Alan Richardson a plus de vingt ans d'expérience professionnelle dans le domaine des technologies de l'information. Il a travaillé en tant que développeur et à tous les niveaux de la hiérarchie des tests, du testeur au responsable des tests. Responsable des relations avec les développeurs à l'adresse Secure Code Warrior, il travaille directement avec les équipes pour améliorer le développement de codes sécurisés de qualité. Alan est l'auteur de quatre livres, dont "Dear Evil Tester" et "Java For Testers". Alan a également créé une formation en ligne courses pour aider les gens à apprendre les tests techniques sur le Web et Selenium WebDriver avec Java. Alan publie ses écrits et ses vidéos de formation sur SeleniumSimplified.com, EvilTester.com, JavaForTesters.com et CompendiumDev.co.uk.

En savoir plus

Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.

Veuillez réserver une démonstration.Télécharger
Partager sur :
marques LinkedInSocialLogo x
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles