def METHOD_NAME(self):
    poly1  = MayaCmds.polyPlane( sx=2, sy=2, w=1, h=1, ch=0)[0]
    group1 = MayaCmds.group()
    group2 = MayaCmds.createNode("transform")
    MayaCmds.select(group1, group2)
    group3 = MayaCmds.group()
    group4 = (MayaCmds.duplicate(group1, rr=1))[0]
    group5 = MayaCmds.group()
    MayaCmds.select(group3, group5)
    root = MayaCmds.group(name='root')
    MayaCmds.setKeyframe(group1 + '.visibility', v=0, t=[1, 4])
    MayaCmds.setKeyframe(group2 + '.visibility', v=0, t=[1, 4])
    MayaCmds.setKeyframe(group5 + '.visibility', v=0, t=[1, 4])
    MayaCmds.setKeyframe(group1 + '.visibility', v=1, t=2)
    MayaCmds.setKeyframe(group2 + '.visibility', v=1, t=2)
    MayaCmds.setKeyframe(group5 + '.visibility', v=1, t=2)
    self.__files.append(util.expandFileName('animVisibilityTest.abc'))
    MayaCmds.AbcExport(j='-wv -fr 1 4 -root %s -file %s' %
        (root, self.__files[-1]))
    MayaCmds.AbcImport(self.__files[-1], mode='open')
    MayaCmds.currentTime(1, update = True)
    self.failIf(MayaCmds.getAttr(group1 + '.visibility'))
    self.failIf(MayaCmds.getAttr(group2 + '.visibility'))
    self.failIf(MayaCmds.getAttr(group5 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group1 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group3 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(root+'.visibility'))
    MayaCmds.currentTime(2, update = True)
    self.failUnless(MayaCmds.getAttr(group1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group2 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group5 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group1 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group3 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(root + '.visibility'))
    MayaCmds.currentTime(4, update = True )
    self.failIf(MayaCmds.getAttr(group1 + '.visibility'))
    self.failIf(MayaCmds.getAttr(group2 + '.visibility'))
    self.failIf(MayaCmds.getAttr(group5 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group1 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '|' + poly1 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group3 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(group4 + '.visibility'))
    self.failUnless(MayaCmds.getAttr(root+'.visibility'))